| <html> |
| <head> |
| <script src="resources/property-names.js"></script> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| function log(message) |
| { |
| var console = document.getElementById("console"); |
| console.appendChild(document.createTextNode(message + "\n")); |
| } |
| |
| function dumpComputedStyle(element, properties) |
| { |
| var style = getComputedStyle(element); |
| |
| if (!properties) { |
| for (var i = 0; i != style.length; ++i) { |
| var name = style.item(i); |
| if (!propertiesToTest[name]) |
| continue; |
| log(name + ": " + style.getPropertyValue(name)); |
| } |
| properties = hiddenComputedStyleProperties; |
| } |
| |
| for (var i = 0; i != properties.length; ++i) { |
| var name = properties[i]; |
| log(name + ": " + style.getPropertyValue(name)); |
| } |
| log(""); |
| } |
| |
| function test() |
| { |
| var outerDiv = document.getElementById("outer"); |
| var middleDiv = document.getElementById("middle"); |
| var innerDiv = document.getElementById("inner"); |
| |
| log("Computed style of an element whose parent's 'display' value is 'none':"); |
| dumpComputedStyle(innerDiv); |
| |
| outerDiv.style.color = "blue"; |
| middleDiv.style.fontSize = "large"; |
| log("After changing grandparent's 'color' and the parent's 'font-size' inherited properties:"); |
| dumpComputedStyle(innerDiv, ["border-top-width", "color"]); |
| |
| middleDiv.style.display = "block"; |
| log("After changing the parent's 'display' property to 'block', so that the child gets a renderer:"); |
| dumpComputedStyle(innerDiv, ["height", "margin-left", "width"]); |
| |
| middleDiv.style.display = ""; |
| log("After changing the parent's 'display' property back to 'none':"); |
| dumpComputedStyle(innerDiv, ["height", "margin-left", "width"]); |
| } |
| </script> |
| <style> |
| div#middle { display: none; width: 700px; } |
| div#inner { background: green; border-top: 1em solid; height: 100px; margin-left: auto; width: 50%; } |
| </style> |
| </head> |
| <body onload="test()"> |
| <pre id="console"></pre> |
| <div id="outer"> |
| <div id="middle"> |
| <div id="inner"> |
| </div> |
| </div> |
| </div> |
| </body> |
| </html> |