<!DOCTYPE html> | |
<meta charset=utf8> | |
<script src="../../resources/js-test-pre.js"></script> | |
<p id="description"></p> | |
<div id="console"> | |
Tests that hidden in markup works: | |
<div hidden><span class=fail>FAIL</span> - this line should not appear</div><div hidden=hidden><span class=fail>FAIL</span> - this line should not appear</div><div hidden=false><span class=fail>FAIL</span> - this line should not appear</div><p hidden><span class=fail>FAIL</span> - this line should not appear</p><span hidden><span class=fail>FAIL</span> - this line should not appear</span><img width=400px alt="FAIL - this should not appear" src="resources/xxx-missing.jpeg" hidden> | |
Tests that dynamically adding/removing hidden works: | |
<div hidden id=test1><span class=pass>PASS</span> - this line should appear<div id=test2><span class=fail>FAIL</span> - this line should not appear</div> | |
</div> | |
<script> | |
description('Various tests for the hidden attribute.'); | |
document.getElementById("test1").removeAttribute("hidden"); | |
document.getElementById("test2").setAttribute("hidden", ""); | |
var testParent = document.createElement('div'); | |
document.body.appendChild(testParent); | |
debug('Dynamic changing of hidden and effects on style:'); | |
testParent.innerHTML="<div id=test3 hidden>a</div><div id=test4>b</div>" | |
var test3 = document.getElementById("test3"); | |
var test4 = document.getElementById("test4"); | |
shouldBe('getComputedStyle(test3, false).display', '"none"'); | |
test3.removeAttribute("hidden"); | |
debug('test3.removeAttribute("hidden")'); | |
shouldBe('getComputedStyle(test3, false).display', '"block"'); | |
shouldBe('getComputedStyle(test4, false).display', '"block"'); | |
test4.setAttribute("hidden", ""); | |
debug('test4.setAttribute("hidden", "")'); | |
shouldBe('getComputedStyle(test4, false).display', '"none"'); | |
</script> | |
<script src="../../resources/js-test-post.js"></script> | |
</body> | |
</html> |