Skip to content

Commit daca477

Browse files
committed
[css2] Some BIDI updates
--HG-- extra : convert_revision : svn%3A73dc7c4b-06e6-40f3-b4f7-9ed1dbc14bfc/trunk%401364
1 parent 28bdb44 commit daca477

2 files changed

Lines changed: 58 additions & 25 deletions

File tree

css2/sample.src

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
22
<html lang="en">
3-
<!-- $Id: sample.src,v 2.11 1998-03-15 22:52:07 bbos Exp $ -->
3+
<!-- $Id: sample.src,v 2.12 1998-03-23 06:37:54 ijacobs Exp $ -->
44
<HEAD>
55
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
66
<TITLE>Appendix A: A sample style sheet for HTML 4.0</TITLE>
@@ -88,6 +88,21 @@ ABBR, ACRONYM {font-variant: small-caps; letter-spacing: 0.1em}
8888
A[href] {text-decoration: underline}
8989
:focus {outline: thin dotted invert}
9090

91+
/* For Unicode bidi */
92+
BDO[DIR="ltr"] { direction: ltr; unicode-bidi: bidi-override }
93+
BDO[DIR="rtl"] { direction: rtl; unicode-bidi: bidi-override }
94+
95+
*[DIR="ltr"] { direction: ltr; unicode-bidi: embed }
96+
*[DIR="rtl"] { direction: rtl; unicode-bidi: embed }
97+
98+
/* Block-level elements */
99+
ADDRESS, BLOCKQUOTE, BODY, DD, DIV, DL, DT, FIELDSET,
100+
FORM, FRAME, FRAMESET, H1, H2, H3, H4, H5, H6, IFRAME,
101+
NOSCRIPT, NOFRAMES, OBJECT, OL, P, UL, APPLET, CENTER,
102+
DIR, HR, MENU, PRE, LI, TABLE, TR, THEAD, TBODY, TFOOT,
103+
COL, COLGROUP, TD, TH, CAPTION
104+
{ unicode-bidi: embed }
105+
91106
/* Begin aural section */
92107
/* The following rules have been adapted from
93108
suggestions by T.V. Raman.

css2/visuren.src

Lines changed: 42 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
22
<html lang="en">
3-
<!-- $Id: visuren.src,v 2.38 1998-03-23 05:04:01 ijacobs Exp $ -->
3+
<!-- $Id: visuren.src,v 2.39 1998-03-23 06:37:41 ijacobs Exp $ -->
44
<HEAD>
55
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
66
<TITLE>Visual rendering model</TITLE>
@@ -709,14 +709,15 @@ class="propinst-text-align">'text-align'</span> property. If that
709709
property has the value 'justify', the user agent may stretch the
710710
inline boxes as well.
711711

712-
<P>Since a box may not exceed the width of a line box, long boxes are
713-
split into several boxes and these boxes distributed across several
714-
line boxes. When a box is split, margins, borders, and padding have no
715-
visual effect at the end of the first line box or at the beginning of
716-
the next line box.
712+
<P>Since an inline box may not exceed the width of a line box, long
713+
inline boxes are split into several boxes and these boxes distributed
714+
across several line boxes. When an inline box is split, margins,
715+
borders, and padding have no visual effect where the split occurs.
716+
Rendering of margins, borders, and padding may not be fully defined if
717+
the split occurs within a bidirectional embedding.
717718

718-
<P>Inline boxes may also be split into several boxes <em>in the same
719-
line box</em> due to <a href="#direction">bidirectional text
719+
<P>Inline boxes may also be split into several boxes <em>within the
720+
same line box</em> due to <a href="#direction">bidirectional text
720721
processing</a>.
721722

722723
<div class="html-example"><P>
@@ -1740,15 +1741,21 @@ property to have any effect on inline-level elements, the <span
17401741
class="propinst-unicode-bidi">'unicode-bidi'</span> property must have
17411742
as value either 'embed' or 'override'.
17421743

1744+
<P>If a default style sheet specifies values for <span
1745+
class="propinst-unicode-bidi">'unicode-bidi'</span>, authors and users
1746+
should not specify rules to override them.
1747+
1748+
<!-- Should the above be must? Should mention be made of the
1749+
cascade? -IJ -->
17431750

17441751
<p>The following example shows an XML document with bidirectional
17451752
text. It illustrates an important design principle: <span
17461753
class="index-inst" title="DTD">DTD</span> designers should take bidi
17471754
into account both in the language proper (elements and attributes) and
17481755
in any accompanying style sheets. The style sheets should be designed
17491756
so that bidi rules are separate from other style rules. The bidi rules
1750-
should not be overridden by other style sheets so that the language's
1751-
bidi behavior is preserved.
1757+
should not be overridden by other style sheets so that the
1758+
document language's or DTD's bidi behavior is preserved.
17521759

17531760
<div class="example"><P>
17541761
In this example,
@@ -1861,20 +1868,27 @@ in case of 'text-align: justify'.
18611868
class="propinst-unicode-bidi">'unicode-bidi'</span> property, it
18621869
specifies an additional embedding level.
18631870

1864-
<li> When set for a table element, it specifies the direction of table
1865-
layout.
1871+
<li>When set for a table element, it specifies the direction of table
1872+
column layout. <strong>Note.</strong> The <span
1873+
class="propinst-direction">'direction'</span>, when specified for
1874+
table column elements, is not inherited by cells in the column since
1875+
columns don't exist in the document tree. Thus, CSS cannot easily
1876+
capture the "dir" attribute inheritance rules described in [[HTML40]],
1877+
section 11.3.2.1.
1878+
18661879

1867-
<li> It specifies the direction that a containing block will grow in
1868-
certain cases of content (i.e. overflow).
1880+
<li> It specifies the direction of horizontal overflow.
18691881
</ol>
18701882

18711883
<P>In order to ensure the proper application of the bidirectional
18721884
algorithm, inline boxes (including anonymous inline boxes) must be
18731885
constructed, split up if necessary, and flowed so that the final order
18741886
of the characters on each line conforms to the Unicode bidirectional
1875-
algorithm. This means that left-to-right flow and right-to-left flow
1876-
can occur within the same element. Non-textual entities such as images
1877-
are treated as neutral characters, unless their <span
1887+
algorithm. This means that left-to-right character sequences and
1888+
right-to-left character sequences can occur within an element's
1889+
content, but inline boxes are constructed so that
1890+
flow remains in one direction. Non-textual entities such as
1891+
images are treated as neutral characters, unless their <span
18781892
class="propinst-unicode-bidi">'unicode-bidi'</span> property has a
18791893
value other than 'normal', in which case they are treated as strong
18801894
characters in the <span class="propinst-direction">'direction'</span>
@@ -1941,11 +1955,7 @@ their bidirectionality must be preserved <em>however they are
19411955
rendered</em>. For example, people expect paragraphs to behave like a
19421956
block with respect to bidirectionality, so even if a paragraph is
19431957
displayed as an 'inline' element, it must introduce a new level of
1944-
bidi embedding. To achieve this, all HTML 4.0 ([[HTML40]])
1945-
block elements must behave as though they had a value of 'embed'
1946-
for <span class="propinst-unicode-bidi">'unicode-bidi'</span>,
1947-
whatever the value of the <span
1948-
class="propinst-display">'display'</span> property.
1958+
bidi embedding.
19491959

19501960
<P>The following rules capture the remaining bidi semantics
19511961
of HTML 4.0:</p>
@@ -1954,8 +1964,16 @@ of HTML 4.0:</p>
19541964
BDO[DIR="ltr"] { direction: ltr; unicode-bidi: bidi-override }
19551965
BDO[DIR="rtl"] { direction: rtl; unicode-bidi: bidi-override }
19561966

1957-
*[DIR="ltr"] { direction: ltr; unicode-bidi: embed }
1958-
*[DIR="rtl"] { direction: rtl; unicode-bidi: embed }
1967+
*[DIR="ltr"] { direction: ltr; unicode-bidi: embed }
1968+
*[DIR="rtl"] { direction: rtl; unicode-bidi: embed }
1969+
1970+
/* Block-level elements */
1971+
ADDRESS, BLOCKQUOTE, BODY, DD, DIV, DL, DT, FIELDSET,
1972+
FORM, FRAME, FRAMESET, H1, H2, H3, H4, H5, H6, IFRAME,
1973+
NOSCRIPT, NOFRAMES, OBJECT, OL, P, UL, APPLET, CENTER,
1974+
DIR, HR, MENU, PRE, LI, TABLE, TR, THEAD, TBODY, TFOOT,
1975+
COL, COLGROUP, TD, TH, CAPTION
1976+
{ unicode-bidi: embed }
19591977
</PRE>
19601978

19611979
</BODY>

0 commit comments

Comments
 (0)