<!DOCTYPE html> | |
<meta charset="UTF-8"> | |
<title>CSS Writing Modes Test: 'writing-mode: horizontal-tb' set to <body> element propagates to viewport</title> | |
<link rel="author" title="GĂ©rard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> | |
<link rel="help" href="https://www.w3.org/TR/css-writing-modes-3/#principal-flow" title="8. The Principal Writing Mode"> | |
<!-- | |
Issue 3066: [css-writing-modes] Does vertical writing mode of an HTML body | |
element cause an orthogonal flow? | |
https://github.com/w3c/csswg-drafts/issues/3066 | |
--> | |
<link rel="match" href="wm-propagation-body-044-ref.html"> | |
<meta name="assert" content="This test checks that when the root element has a <body> child element, then the principal writing mode is instead taken from the values of writing-mode and direction on the first such child element instead of taken from the root element. Also, a small script in this test verifies that the computed value of 'writing-mode' of the root element itself is not affected by such propagation. We also check that the computed value is unaffected by inheriting it into a pseudo element."> | |
<!-- | |
Tests 032 to 035: html's writing-mode is not specified | |
Tests 036 to 039: html's writing-mode is specified as horizontal-tb | |
Tests 040 to 043: html's writing-mode is specified as vertical-rl | |
Tests 044 to 047: html's writing-mode is specified as vertical-lr | |
Tests 048 to 051: html's writing-mode is specified as sideways-rl | |
Tests 052 to 055: html's writing-mode is specified as sideways-lr | |
--> | |
<style> | |
html | |
{ | |
writing-mode: vertical-lr; | |
} | |
html::after | |
{ | |
content: "This text must be written vertically, below the orange square."; | |
display: block; | |
} | |
body | |
{ | |
writing-mode: horizontal-tb; | |
} | |
img#orange-square | |
{ | |
height: 100px; | |
padding-right: 1em; | |
vertical-align: top; | |
width: 100px; | |
} | |
h1#second-test-condition | |
{ | |
background-color: red; | |
color: yellow; | |
} | |
</style> | |
<script> | |
function verifyComputedValueDocRoot() | |
{ | |
if(getComputedStyle(document.documentElement)["writing-mode"] == "vertical-lr") | |
{ | |
document.getElementById("second-test-condition").style.display = "none"; | |
}; | |
/* | |
If the computed value of 'writing-mode' of the root element | |
itself is not affected by such propagation, then the big FAIL | |
word will not be displayed. | |
*/ | |
} | |
</script> | |
<body onload="verifyComputedValueDocRoot();"> | |
<p><img id="orange-square" src="support/swatch-orange.png" alt="Image download support must be enabled"><img src="support/wm-propagation-body-003-exp-res.png" width="340" height="37" alt="Image download support must be enabled"></p> | |
<!-- | |
The image says: | |
Test passes if there is an orange square | |
in the <strong>upper-left corner</strong> of the page. | |
--> | |
<h1 id="second-test-condition">FAIL</h1> |