text-align-start-017

text-align: start, pre, dir=auto on surrounding block

WeasyPrint

Reference (good) by WeasyPrint

Reference (good) by this browser

This browser

Assertion
text-align:start aligns inline-level content to the start edge of the line box – ie. since dir=auto is not inherited by pre, to left in ltr context.

Source

 1 <!DOCTYPE html>
 2 <html lang="en"><head>
 3 <meta charset="utf-8">
 4 <title>text-align: start, pre, dir=auto on surrounding block</title>
 5 <link href="mailto:ishida@w3.org" rel="author" title="Richard Ishida">
 6 <link href="https://drafts.csswg.org/css-text-3/#text-align-property" rel="help">
 7 <link href="reference/text-align-start-ref-017.htm" rel="match">
 8 <meta content="text-align:start aligns inline-level content to the start edge of the line box – ie. since dir=auto is not inherited by pre, to left in ltr context." name="assert">
 9 <style type="text/css">
10 .test { text-align: start; }
11 /* the CSS below is not part of the test */
12 .test, .ref { border: 1px solid orange;  margin: 20px; width: 290px; color: orange; font: 24px/24px ahem; }
13 .ref { position: relative;  height: 48px; }
14 #rb1 { position: absolute; top: 0; left: 0; background-color: orange; width: 72px;  height: 48px; }
15 </style>
16 </head>
17 <body>
18 <div id="instructions">Test passes if shading in both orange boxes is identical.</div>
19 <div dir="auto">
20 <pre class="test">XXX
21 &rlm;XXX</pre>
22 <div class="ref"><div id="rb1"></div></div>
23 </div>
24 <!-- Notes:
25 The &rlm isn't in the Ahem font, so it may cause a spurious effect, such as a thin white line in the middle of a block in IE. This should be ignored. The test needs a RTL character in the Ahem font, so that the &RLM can be removed.
26 The rationale for the expected outcome here is described at
27 https://drafts.csswg.org/css-writing-modes-3/#valdef-unicode-bidi-plaintext
28 "Because the unicode-bidi property does not inherit, setting bidi-override or plaintext on a block box will not affect any descendant blocks. Therefore these values are best used on blocks and inlines that do not contain any block-level structures. "
29 -->
30 
31 
32 </body></html>