<!DOCTYPE html>
<html  lang="en" >
<head>
<meta charset="utf-8"/>
<title>[lang|="cs-CZ"], lang="cs-Latn-CZ"</title>
<link rel='author' title='Richard Ishida' href='mailto:ishida@w3.org'>
<link rel='help' href='http://www.w3.org/TR/css3-selectors/#attribute-selectors'>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style type='text/css'>
.test div { width: 50px; }
 		#colonlangcontroltest { color: red; font-weight: bold; width: 400px; }
		#colonlangcontroltest[lang|=xx] { display:none; }
#box[lang|='cs-CZ'] { width: 100px; }
#relevance[lang|='yy'] { display:none; }
</style>
</head>
<body>



<div class="test"><div id="box" lang="cs-Latn-CZ">&#xA0;</div></div>
<p lang='xx' id='colonlangcontroltest'>This test failed because it relies on [lang|=..] for results, but [lang|=..] is not supported by this browser.


<!-- Notes:
This tests a detail related to [lang|=..] support. If [lang|=..] is not supported, a message will appear and the test will fail.
 -->
<script>
test(function() {
assert_equals(document.getElementById('colonlangcontroltest').offsetWidth, 0)
assert_equals(document.getElementById('box').offsetWidth, 50);
}, "A lang|= value with language and region subtags will NOT match a lang attribute value with language, script and region subtags.");
</script>

<div id='log'></div>

</body>
</html>
