- From: Ishii Koji via cvs-syncmail <cvsmail@w3.org>
- Date: Sat, 16 Apr 2011 06:16:01 +0000
- To: public-css-commits@w3.org
Update of /sources/public/csswg/css3-text
In directory hutz:/tmp/cvs-serv18315
Modified Files:
Overview.html Overview.src.html
Log Message:
Combine text-trim and text-autospace into text-spacing property:
* Changed title from "fullwidth kerning" to "character class spacing"
* Removed automatic white space collapsing using 'text-autospace'
* Put "||" after 'normal' so that authors can specify 'normal' and other values as well
Index: Overview.html
===================================================================
RCS file: /sources/public/csswg/css3-text/Overview.html,v
retrieving revision 1.103
retrieving revision 1.104
diff -u -d -r1.103 -r1.104
--- Overview.html 13 Apr 2011 08:45:47 -0000 1.103
+++ Overview.html 16 Apr 2011 06:15:59 -0000 1.104
@@ -83,14 +83,14 @@
<h1>CSS Text Level 3</h1>
- <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 13 April 2011</h2>
+ <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 16 April 2011</h2>
<dl>
<dt>This version:
<dd><a href="http://dev.w3.org/csswg/css3-text/Overview.html">$Date:
- 2011/04/11 05:23:59 $ (CVS $Revision$)</a> <!--
- <dd><a href="http://www.w3.org/TR/2011/WD-css3-text-20110413/">http://www.w3.org/TR/2011/WD-css3-text-20110413/</a></dd>
+ 2011/04/13 08:45:47 $ (CVS $Revision$)</a> <!--
+ <dd><a href="http://www.w3.org/TR/2011/WD-css3-text-20110416/">http://www.w3.org/TR/2011/WD-css3-text-20110416/</a></dd>
-->
@@ -223,11 +223,8 @@
<li>the ‘<a href="#text-outline0"><code
class=property>text-outline</code></a>’ property
- <li>the ‘<a href="#text-trim"><code
- class=property>text-trim</code></a>’ property
-
- <li>the ‘<a href="#text-autospace"><code
- class=property>text-autospace</code></a>’ property
+ <li>the ‘<a href="#text-spacing"><code
+ class=property>text-spacing</code></a>’ property
<li><span class=issue>audit draft and add more here</span>
</ul>
@@ -378,13 +375,9 @@
the ‘<code class=property>letter-spacing</code>’
property</a>
- <li><a href="#text-trim-prop"><span class=secno>9.3. </span> Fullwidth
- Kerning: the ‘<code class=property>text-trim</code>’
- property</a>
-
- <li><a href="#text-autospace-prop"><span class=secno>9.4. </span> Adding
- space: the ‘<code class=property>text-autospace</code>’
- property</a>
+ <li><a href="#text-spacing-prop"><span class=secno>9.3. </span>
+ Character Class Spacing: the ‘<code
+ class=property>text-spacing</code>’ property</a>
</ul>
<li><a href="#edge-effects"><span class=secno>10. </span> Edge Effects</a>
@@ -1120,11 +1113,6 @@
and after the line feed is F, W, or H (not A), and neither side is
Hangul, then the line feed is removed.
- <li>Otherwise, if ‘<a href="#text-autospace"><code
- class=property>text-autospace</code></a>’ property is set to add
- extra spaces for the combination of the character before the line feed
- and after, then the line break is removed.
-
<li>Otherwise, the line feed is converted to a space (U+0020).
</ul>
@@ -3002,16 +2990,18 @@
<dd>An expansion opportunity exists between a pair of characters from the
Unicode symbols (S*) and punctuation (P*) classes and at enabled <a
- href="#text-autospace">autospace</a> points. The default justification
- priority of these points depends on the justification method as defined
- below; however there may be additional rules controlling their
- justification behavior due to typographic tradition. For example, there
- are traditionally no expansion opportunities between consecutive EM DASH
- U+2014, HORIZONTAL BAR U+2015, HORIZONTAL ELLIPSIS U+2026, or TWO DOT
- LEADER U+2025 characters <a href="#JLREQ"
- rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a>. The UA may introduce
- additional levels of priority to handle expansion opportunities involving
- punctuation.
+ href="#text-autospace">autospace</a> points. <span class=issue>the
+ relationship of expansion opportunity and ‘<a
+ href="#text-spacing"><code class=property>text-spacing</code></a>’
+ needs more review</span> The default justification priority of these
+ points depends on the justification method as defined below; however
+ there may be additional rules controlling their justification behavior
+ due to typographic tradition. For example, there are traditionally no
+ expansion opportunities between consecutive EM DASH U+2014, HORIZONTAL
+ BAR U+2015, HORIZONTAL ELLIPSIS U+2026, or TWO DOT LEADER U+2025
+ characters <a href="#JLREQ" rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a>.
+ The UA may introduce additional levels of priority to handle expansion
+ opportunities involving punctuation.
<dt>connected
@@ -3305,15 +3295,15 @@
where the ‘<a href="#text-justify0"><code
class=property>text-justify</code></a>’ property is ‘<code
class=css>inter-ideograph</code>’ and the ‘<a
- href="#text-trim"><code class=property>text-trim</code></a>’
+ href="#text-spacing"><code class=property>text-spacing</code></a>’
property does not specify ‘<code
class=css>no-justify</code>’.</p>
<p>It produces an effect similar to cases where the computed value of
- ‘<a href="#text-trim"><code
- class=property>text-trim</code></a>’ property does not specify
- ‘<code class=css>force-end</code>’ or ‘<code
- class=css>keep-end</code>’. If the UA wants to prohibit this
+ ‘<a href="#text-spacing"><code
+ class=property>text-spacing</code></a>’ property does not specify
+ ‘<code class=css>trim-end</code>’ or ‘<code
+ class=css>space-end</code>’. If the UA wants to prohibit this
behavior, rule b. of 3.8.3 should be omitted.</p>
<p>Note that the rules described in the document specifically target
@@ -3337,14 +3327,14 @@
<li>Compress the left side of <a href="#fullwidth-opening-punctuation">fullwidth opening punctuations</a>
and the right side of <a href="#fullwidth-closing-punctuation">fullwidth closing punctuations</a>
up to 1/2em.</li>
- <li>Compress spaces created by ‘<code class=css>text-autospace</code>’ property up to 1/8em.</li>
+ <li>Compress spaces created by ‘<code class=property>text-spacing</code>’ property up to 1/8em.</li>
</ol></li>
<li>If the compression fails to fit the line,
take the last line break opportunity before the end of line,
and apply the following rules (in order) to expand until it fits.
<ol style="list-style-type:lower-alpha">
<li>Expand space characters up to the maximum value specified by ‘<code class=css>word-spacing</code>’ property, or up to 1/2em.</li>
- <li>Expand spaces created by ‘<code class=css>text-autospace</code>’ property up to 1/2em.</li>
+ <li>Expand spaces created by ‘<code class=property>text-spacing</code>’ property up to 1/2em.</li>
<li>Expand all expansion opportunities as defined above in equal percent of the size of each character.</li>
</ol></li>
</ol>
@@ -3586,41 +3576,25 @@
<p>When the resulting space between two characters is not the same as the
default space, user agents should not use optional ligatures.
- <h3 id=text-trim-prop><span class=secno>9.3. </span> <a
- name=punctuation-trim></a> Fullwidth Kerning: the ‘<a
- href="#text-trim"><code class=property>text-trim</code></a>’
+ <h3 id=text-spacing-prop><span class=secno>9.3. </span> <a
+ name=punctuation-trim></a> <a name=text-trim-prop></a><a
+ name=text-trim></a> <a name=text-autospace-prop></a><a
+ name=text-autospace></a> Character Class Spacing: the ‘<a
+ href="#text-spacing"><code class=property>text-spacing</code></a>’
property</h3>
- <pre class=note>
- Syntax is derived as a shorthand of the following theoretical
- properties (defaults given first):
-
- text-trim-start: keep-start | force-start
- text-trim-end: allow-end | force-end | keep-end | keep-fullstop
- text-trim-adjacent: force-adjacent | keep-adjacent
- text-trim-kana: ...
- text-trim-justify: justify | no-justify
-
- Filtering out the default values (and ignoring trim-kana),
- we get the following shorthand:
- text-trim: normal |
- force-start ||
- [ force-end | keep-end | keep-fullstop] ||
- keep-adjacent ||
- no-justify
- </pre>
-
<table class=propdef>
<tbody>
<tr>
<th>Name:
- <td><dfn id=text-trim>text-trim</dfn>
+ <td><dfn id=text-spacing>text-spacing</dfn>
<tr>
<th>Value:
- <td>normal | force-start || [ keep-end | force-end ] || no-justify
+ <td>normal || trim-start || [ trim-end | space-end ] || no-justify ||
+ ideograph-alpha || ideograph-numeric || punctuation
<tr>
<th>Initial:
@@ -3653,31 +3627,45 @@
<td>specified value
</table>
- <p>This property determines whether or not a fullwidth punctuation
- character should be trimmed (kerned). Values are defined as follows:
+ <p>This property determines spacing between two characters classes. The
+ spacing may either be created or trimmed. Values are defined as follows:
<dl>
- <dt><dfn id=normal5 title="text-trim:normal">normal</dfn>
+ <dt><dfn id=normal5 title="text-spacing:normal">normal</dfn>
<dd>Trim (kern) the blank half of fullwidth closing punctuation at the end
- of each line if it does not otherwise fit prior to justification.
+ of each line if it does not otherwise fit prior to justification.</dd>
+ <!--
+ <dd>Equivalent to ‘<code class=css>space-start allow-end justify</code>’.</dd>
+ -->
- <dt><dfn id=force-start title="text-trim:force-start">force-start</dfn>
+ <dt><dfn id=trim-start title="text-spacing:trim-start">trim-start</dfn>
<dd>Trim (kern) the blank half of fullwidth opening punctuation at the
- beginning of each line.
+ beginning of each line.</dd>
+ <!--
+ <dt><dfn title="text-spacing:space-start">space-start</dfn></dt>
+ <dd>Do not trim the blank half of fullwidth opening punctuation at
+ the beginning of each line.</dd>
+ -->
+ <!--
+ <dt><dfn title="text-spacing:allow-end">allow-end</dfn></dt>
+ <dd>Trim (kern) the blank half of fullwidth closing punctuation at
+ the end of each line if it does not otherwise fit prior to
+ justification.</dd>
+ -->
- <dt><dfn id=keep-end title="text-trim:keep-end">keep-end</dfn>
+ <dt><dfn id=trim-end title="text-spacing:trim-end">trim-end</dfn>
- <dd>Do not trim the blank half of fullwidth opening punctuation at the end
+ <dd>Trim (kern) the blank half of fullwidth closing punctuation at the end
of each line.
- <dt><dfn id=force-end title="text-trim:force-end">force-end</dfn>
+ <dt><dfn id=space-end title="text-spacing:keep-end">space-end</dfn>
- <dd>Trim (kern) the blank half of fullwidth closing punctuation at the end
+ <dd>Do not trim the blank half of fullwidth closing punctuation at the end
of each line.
- <dt><dfn id=no-justify title="text-trim:no-justify">no-justify</dfn>
+ <dt><dfn id=no-justify title="text-spacing:no-justify">no-justify</dfn>
<dd>The blank portions of fullwidth punctuation must not be trimmed during
the justification process. (If this value is not specified, the
@@ -3685,6 +3673,33 @@
punctuation glyphs.) <span class=note> An example of compression rules is
given for Japanese in 3.8 Line Adjustment in <a href="#JLREQ"
rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a>.</span>
+
+ <dt><dfn id=ideograph-alpha
+ title="text-spacing:ideograph-alpha">ideograph-alpha</dfn>
+
+ <dd>Creates 1/4em extra spacing between runs of ideographic letters and
+ non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or
+ Hebrew. <span class=note>A commonly used algorithm for determining this
+ behavior is specified in <a href="#JLREQ"
+ rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a></span>
+
+ <dt><dfn id=ideograph-numeric
+ title="text-spacing:ideograph-numeric">ideograph-numeric</dfn>
+
+ <dd>Creates 1/4em extra spacing between runs of ideographic letters and
+ non-ideographic numeric glyphs. <span class=note>A commonly used
+ algorithm for determining this behavior is specified in <a href="#JLREQ"
+ rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a></span>
+
+ <dt><dfn id=punctuation title="text-spacing:punctuation">punctuation</dfn>
+
+
+ <dd>Creates extra non-breaking spacing around punctuation as required by
+ language-specific typographic conventions. For example, if the element's
+ content language is French, narrow no-break space (U+202F) and no-break
+ space (U+00A0) should be inserted where required by <a
+ href="http://unicode.org/udhr/n/notes_fra.html">French typographic
+ guidelines</a>.
</dl>
<p>In all cases, the UA must trim (kern) the blank half of fullwidth
@@ -3809,6 +3824,49 @@
<dd>Includes IDEOGRAPHIC COMMA (U+3001), IDEOGRAPHIC FULL STOP (U+3002),
FULLWIDTH COMMA (U+FF0C), FULLWIDTH FULL STOP (U+FF0E).
+
+ <dt><dfn id=ideographic-letters>Ideographic letters</dfn>
+
+ <dd>Includes all characters listed below:
+ <ul>
+ <li>All characters in the range of U+3041 to U+30FF, except that belongs
+ to Unicode Punctuation [P*] category.
+
+ <li>CJK Strokes (U+31C0 to U+31EF).
+
+ <li>Katakana Phonetic Extensions (U+31F0 to U+31FF).
+
+ <li>All characters that belongs to Han Unicode Script Property <a
+ href="#UAX24" rel=biblioentry>[UAX24]<!--{{!UAX24}}--></a>.
+ </ul>
+
+ <dt><dfn id=non-ideographic-letters>Non-ideographic letters</dfn>
+
+ <dd>Includes all characters that belongs to Unicode Letters [L*] and Mark
+ [M*] category, except any of the following conditions are met:
+ <ul>
+ <li>Is defined as Ideographic letters.
+
+ <li>Is categorized as East Asian Fullwidth (F) by <a href="#UAX11"
+ rel=biblioentry>[UAX11]<!--{{!UAX11}}--></a>.
+
+ <li>Is upright in vertical text flow using the ‘<code
+ class=property>text-orientation</code>’ property or the
+ ‘<code class=property>text-combine</code>’ property.
+ </ul>
+
+ <dt><dfn id=non-ideographic-numerals>Non-ideographic numerals</dfn>
+
+ <dd>Includes all characters that belongs to Unicode Number, Decimal Digit
+ [Nd] category, except any of the following conditions are met:
+ <ul>
+ <li>Is categorized as East Asian Fullwidth (F) by <a href="#UAX11"
+ rel=biblioentry>[UAX11]<!--{{!UAX11}}--></a>.
+
+ <li>Is upright in vertical text flow using the ‘<code
+ class=property>text-orientation</code>’ property or the
+ ‘<code class=property>text-combine</code>’ property.
+ </ul>
</dl>
<p>Fullwidth opening and closing punctuation must not be trimmed if the
@@ -3887,188 +3945,33 @@
standard convention is often not followed.</p>
</div>
- <p>Support for this property is <em>optional</em>. It is strongly
- recommended for UAs that wish to support CJK typography.
-
- <h3 id=text-autospace-prop><span class=secno>9.4. </span> Adding space: the
- ‘<a href="#text-autospace"><code
- class=property>text-autospace</code></a>’ property</h3>
-
- <table class=propdef>
- <tbody>
- <tr>
- <th>Name:
-
- <td><dfn id=text-autospace>text-autospace</dfn>
-
- <tr>
- <th>Value:
-
- <td>none | [ ideograph-numeric || ideograph-alpha || punctuation ]
-
- <tr>
- <th>Initial:
-
- <td>none
-
- <tr>
- <th>Applies to:
-
- <td>all elements
-
- <tr>
- <th>Inherited:
-
- <td>yes
-
- <tr>
- <th>Percentages:
-
- <td>N/A
-
- <tr>
- <th>Media:
-
- <td>visual
-
- <tr>
- <th>Computed value:
-
- <td>specified value
- </table>
-
- <p>When a run of non-ideographic or numeric characters appears inside of
- ideographic text, a certain amount of space is often preferred on both
- sides of the non-ideographic text to separate it from the surrounding
- ideographic glyphs. This property controls the creation of that space when
- rendering the text. That added width does not correspond to the insertion
- of additional space characters, but instead to the width increment of
- existing glyphs.
-
- <p>(A commonly used algorithm for determining this behavior is specified in
- <a href="#JLREQ" rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a>.)
+ <p>When creating extra spacing, the added width does not correspond to the
+ insertion of additional space characters, but instead to the width
+ increment of existing glyphs.
- <p>This property is additive with the <span class=property><a
- href="#word-spacing">‘<code
- class=property>word-spacing</code>’</a></span> and <span
- class=property><a href="#letter-spacing">‘<code
- class=property>letter-spacing</code>’</a></span> <a href="#CSS21"
- rel=biblioentry>[CSS21]<!--{{!CSS21}}--></a> properties. That is, the
+ <p>This property is additive with the ‘<a href="#word-spacing0"><code
+ class=property>word-spacing</code></a>’ and ‘<a
+ href="#letter-spacing0"><code
+ class=property>letter-spacing</code></a>’ properties. That is, the
amount of spacing contributed by the ‘<a
href="#letter-spacing0"><code
class=property>letter-spacing</code></a>’ setting (if any) is added
- to the spacing created by <span class=property><a
- href="#text-autospace">‘<code
- class=property>text-autospace</code>’</a></span>. The same applies
- to <span class=property><a href="#word-spacing">‘<code
- class=property>word-spacing</code>’</a></span>.
-
- <p>The space added can be compressed or expanded during the justification
- process as specified in the ‘<a href="#text-justify0"><code
- class=property>text-justify</code></a>’ property.
+ to the spacing created by ‘<a href="#text-spacing"><code
+ class=property>text-spacing</code></a>’. The same applies to
+ ‘<a href="#word-spacing0"><code
+ class=property>word-spacing</code></a>’.
<p>This property applies only to the same inline element context, and can
apply across elements if in the same inline element context.
- <p>Values have the following meanings:
-
- <dl>
- <dt><dfn id=none3 title="text-autospace:none"><code>none</code></dfn>
-
- <dd>No extra space is created.
-
- <dt><dfn id=ideograph-numeric
- title="text-autospace:ideograph-numeric"><code>ideograph-numeric</code></dfn>
-
- <dd>Creates 1/4em extra spacing between runs of ideographic letters and
- non-ideographic numeric glyphs.
-
- <dt><dfn id=ideograph-alpha
- title="text-autospace:ideograph-alpha"><code>ideograph-alpha</code></dfn>
-
- <dd>Creates 1/4em extra spacing between runs of ideographic letters and
- non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or
- Hebrew.
-
- <dt><dfn id=punctuation
- title="text-autospace:punctuation"><code>punctuation</code></dfn>
-
- <dd>Creates extra non-breaking spacing around punctuation as required by
- language-specific typographic conventions. For example, if the element's
- content language is French, narrow no-break space (U+202F) and no-break
- space (U+00A0) should be inserted where required by <a
- href="http://unicode.org/udhr/n/notes_fra.html">French typographic
- guidelines</a>.
- </dl>
-
- <p class=issue>It was requested to add a value for doubling the space after
- periods.
-
<p>At element boundaries, the font size of the extra spacing is given by
and rendered within the innermost element that contains the boundary.
- <p>In the context of this property the following definitions apply:
-
- <p class=issue>Reviews and feedbacks to the classes/code points are
- appreciated.
-
- <dl>
- <dt><dfn id=ideographic-letters>Ideographic letters</dfn>
-
- <dd>
- <ul>
- <li>All characters in the range of U+3041 to U+30FF, except that belongs
- to Unicode Punctuation [P*] category.
-
- <li>CJK Strokes (U+31C0 to U+31EF).
-
- <li>Katakana Phonetic Extensions (U+31F0 to U+31FF).
-
- <li>All characters that belongs to Han Unicode Script Property <a
- href="#UAX24" rel=biblioentry>[UAX24]<!--{{!UAX24}}--></a>.
- </ul>
-
- <dt><dfn id=non-ideographic-numerals>Non-ideographic numerals</dfn>
-
- <dd>
- <ul>
- <li>All characters that belongs to Unicode Number, Decimal Digit [Nd]
- category.
-
- <li>Except any of the following conditions are met:
- <ul>
- <li>Is categorized as East Asian Fullwidth (F) by <a href="#UAX11"
- rel=biblioentry>[UAX11]<!--{{!UAX11}}--></a>.
-
- <li>Is upright in vertical text flow using the ‘<code
- class=property>text-orientation</code>’ property or the
- ‘<code class=property>text-combine</code>’ property.
- </ul>
- </ul>
-
- <dt><dfn id=non-ideographic-letters>Non-ideographic letters</dfn>
-
- <dd>
- <ul>
- <li>All characters that belongs to Unicode Letters [L*] and Mark [M*]
- category.
-
- <li>Except any of the following conditions are met:
- <ul>
- <li>Is defined as Ideographic letters.
-
- <li>Is categorized as East Asian Fullwidth (F) by <a href="#UAX11"
- rel=biblioentry>[UAX11]<!--{{!UAX11}}--></a>.
-
- <li>Is upright in vertical text flow using the ‘<code
- class=property>text-orientation</code>’ property or the
- ‘<code class=property>text-combine</code>’ property.
- </ul>
- </ul>
- </dl>
+ <p>Support for this property is <em>optional</em>. It is strongly
+ recommended for UAs that wish to support CJK typography.
- <p>Support for this property is <em>optional</em>. It is recommended for
- UAs that wish to support CJK typography.
+ <p class=issue>It was requested to add a value for doubling the space after
+ periods.
<h2 id=edge-effects><span class=secno>10. </span> Edge Effects</h2>
@@ -4078,7 +3981,8 @@
to the start and end edges of a line (‘<a
href="#hanging-punctuation0"><code
class=property>hanging-punctuation</code></a>’, see also ‘<a
- href="#text-trim"><code class=property>text-trim</code></a>’).
+ href="#text-spacing"><code class=property>text-spacing</code></a>’).
+
<div class=example>
<p>Japanese has three common start-edge typesetting schemes, which are
@@ -4107,21 +4011,21 @@
<pre>p { /* Flush alignment */
<!-- --> margin: 0;
<!-- --> text-indent: 1em;
-<!-- --> text-trim: force-start;
+<!-- --> text-spacing: trim-start;
<!-- -->}</pre>
<li>Brackets preserve fullwidth spacing on all lines (second scheme):
<pre>p { /* Fullwidth alignment */
<!-- --> margin: 0;
<!-- --> text-indent: 1em;
-<!-- --> text-trim: normal;
+<!-- --> text-spacing: normal;
<!-- -->}</pre>
<li>Brackets hang in indent, flush with other lines (third scheme):
<pre>p { /* Hanging alignment */
<!-- --> margin: 0;
<!-- --> text-indent: 1em;
-<!-- --> text-trim: force-start;
+<!-- --> text-spacing: trim-start;
<!-- --> hanging-punctuation: first;
<!-- -->}</pre>
</ul>
@@ -4300,7 +4204,7 @@
formatted line</a> of an element hangs. This applies to all characters in
the Unicode categories Ps, Pf, Pi.
- <dt><dfn id=force-end0
+ <dt><dfn id=force-end
title="hanging-punctuation:force-end"><code>force-end</code></dfn>
<dd>A stop or comma at the end of a line hangs.
@@ -4512,7 +4416,7 @@
Values have the following meanings:
<dl>
- <dt><dfn id=none4 title="text-decoration-line:none">none</dfn>
+ <dt><dfn id=none3 title="text-decoration-line:none">none</dfn>
<dd>Neither produces nor inhibits text decoration.
@@ -4795,7 +4699,7 @@
drawn by its ancestors. Values have the following meanings:
<dl>
- <dt><dfn id=none5 title="text-decoration-skip:none">none</dfn>
+ <dt><dfn id=none4 title="text-decoration-skip:none">none</dfn>
<dd>Skip nothing: text-decoration is drawn for all text content and for
inline replaced elements.
@@ -5007,7 +4911,7 @@
the following meanings:
<dl>
- <dt><dfn id=none6 title="text-emphasis:none"><code>none</code></dfn>
+ <dt><dfn id=none5 title="text-emphasis:none"><code>none</code></dfn>
<dd>No emphasis marks.
@@ -5631,10 +5535,9 @@
href="#hyphenate-resource"><code
class=css>@hyphenate-resource</code></a>’, ‘<a
href="#line-break0"><code class=property>line-break</code></a>’,
- ‘<a href="#text-autospace"><code
- class=property>text-autospace</code></a>’, ‘<a
- href="#text-trim"><code class=property>text-trim</code></a>’,
- ‘<a href="#hanging-punctuation0"><code
+ ‘<a href="#text-spacing"><code
+ class=property>text-spacing</code></a>’, ‘<a
+ href="#hanging-punctuation0"><code
class=property>hanging-punctuation</code></a>’
<p>Significant details updated:
@@ -5683,16 +5586,6 @@
<dt style="display:
none"><!-- keeps the doc valid if the DL is empty --> <!---->
- <dt id=CSS21>[CSS21]
-
- <dd>Bert Bos; et al. <a
- href="http://www.w3.org/TR/2010/WD-CSS2-20101207"><cite>Cascading Style
- Sheets Level 2 Revision 1 (CSS 2.1) Specification.</cite></a> 7
- December 2010. W3C Working Draft. (Work in progress.) URL: <a
- href="http://www.w3.org/TR/2010/WD-CSS2-20101207">http://www.w3.org/TR/2010/WD-CSS2-20101207</a>
- </dd>
- <!---->
-
<dt id=CSS3BG>[CSS3BG]
<dd>Bert Bos; Elika J. Etemad; Brad Kemper. <a
@@ -5898,19 +5791,6 @@
<td>CJK (Japanese)
<tr>
- <td>‘<a href="#text-autospace"><code
- class=property>text-autospace</code></a>’
-
- <td>CJK
-
- <tr>
- <td>‘<a href="#text-autospace"><code
- class=property>text-autospace</code></a>’: ‘<code
- class=css>punctuation</code>’
-
- <td>European (French)
-
- <tr>
<td>‘<a href="#text-justify0"><code
class=property>text-justify</code></a>’: ‘<code
class=css>inter-cluster</code>’
@@ -5958,6 +5838,19 @@
<td>CJK
<tr>
+ <td>‘<a href="#text-spacing"><code
+ class=property>text-spacing</code></a>’
+
+ <td>CJK
+
+ <tr>
+ <td>‘<a href="#text-spacing"><code
+ class=property>text-spacing</code></a>’: ‘<code
+ class=css>punctuation</code>’
+
+ <td>European (French)
+
+ <tr>
<td>‘<a href="#text-transform0"><code
class=property>text-transform</code></a>’: ‘<code
class=css>capitalize</code>’, ‘<code
@@ -5975,12 +5868,6 @@
<td>CJK
<tr>
- <td>‘<a href="#text-trim"><code
- class=property>text-trim</code></a>’
-
- <td>CJK
-
- <tr>
<td>‘<a href="#text-underline-position0"><code
class=property>text-underline-position</code></a>’:
‘<code class=css>auto</code>’
@@ -6312,21 +6199,6 @@
<td>visual
<tr valign=baseline>
- <td><a class=property href="#text-autospace">text-autospace</a>
-
- <td>none | [ ideograph-numeric || ideograph-alpha || punctuation ]
-
- <td>none
-
- <td>all elements
-
- <td>yes
-
- <td>N/A
-
- <td>visual
-
- <tr valign=baseline>
<td><a class=property href="#text-decoration0">text-decoration</a>
<td><text-decoration-line> || <text-decoration-color> ||
@@ -6536,12 +6408,12 @@
<td>visual
<tr valign=baseline>
- <td><a class=property href="#text-transform0">text-transform</a>
+ <td><a class=property href="#text-spacing">text-spacing</a>
- <td>none | [ [ capitalize | uppercase | lowercase ] || fullwidth ||
- fullsize-kana ]
+ <td>normal || trim-start || [ trim-end | space-end ] || no-justify ||
+ ideograph-alpha || ideograph-numeric || punctuation
- <td>none
+ <td>normal
<td>all elements
@@ -6552,11 +6424,12 @@
<td>visual
<tr valign=baseline>
- <td><a class=property href="#text-trim">text-trim</a>
+ <td><a class=property href="#text-transform0">text-transform</a>
- <td>normal | force-start || [ keep-end | force-end ] || no-justify
+ <td>none | [ [ capitalize | uppercase | lowercase ] || fullwidth ||
+ fullsize-kana ]
- <td>normal
+ <td>none
<td>all elements
@@ -6758,7 +6631,7 @@
<li>hanging-punctuation:first, <a href="#first"
title="hanging-punctuation:first"><strong>10.2.</strong></a>
- <li>hanging-punctuation:force-end, <a href="#force-end0"
+ <li>hanging-punctuation:force-end, <a href="#force-end"
title="hanging-punctuation:force-end"><strong>10.2.</strong></a>
<li>hyphenate-character, <a href="#hyphenate-character0"
@@ -6783,7 +6656,7 @@
<li>Ideographic letters, <a href="#ideographic-letters"
- title="Ideographic letters"><strong>9.4.</strong></a>
+ title="Ideographic letters"><strong>9.3.</strong></a>
<li>letter-spacing, <a href="#letter-spacing0"
title=letter-spacing><strong>9.2.</strong></a>
@@ -6810,10 +6683,10 @@
title="''none''"><strong>6.5.</strong></a>
<li>Non-ideographic letters, <a href="#non-ideographic-letters"
- title="Non-ideographic letters"><strong>9.4.</strong></a>
+ title="Non-ideographic letters"><strong>9.3.</strong></a>
<li>Non-ideographic numerals, <a href="#non-ideographic-numerals"
- title="Non-ideographic numerals"><strong>9.4.</strong></a>
+ title="Non-ideographic numerals"><strong>9.3.</strong></a>
<li>overline, <a href="#overline"
title=overline><strong>11.1.1.</strong></a>
@@ -6882,21 +6755,6 @@
<li>text-align:<string>, <a href="#ltstringgt"
title="text-align:<string>"><strong>8.1.</strong></a>
- <li>text-autospace, <a href="#text-autospace"
- title=text-autospace><strong>9.4.</strong></a>
-
- <li>text-autospace:ideograph-alpha, <a href="#ideograph-alpha"
- title="text-autospace:ideograph-alpha"><strong>9.4.</strong></a>
-
- <li>text-autospace:ideograph-numeric, <a href="#ideograph-numeric"
- title="text-autospace:ideograph-numeric"><strong>9.4.</strong></a>
-
- <li>text-autospace:none, <a href="#none3"
- title="text-autospace:none"><strong>9.4.</strong></a>
-
- <li>text-autospace:punctuation, <a href="#punctuation"
- title="text-autospace:punctuation"><strong>9.4.</strong></a>
-
<li>text-decoration, <a href="#text-decoration0"
title=text-decoration><strong>11.1.4.</strong></a>
@@ -6906,7 +6764,7 @@
<li>text-decoration-line, <a href="#text-decoration-line0"
title=text-decoration-line><strong>11.1.1.</strong></a>
- <li>text-decoration-line:none, <a href="#none4"
+ <li>text-decoration-line:none, <a href="#none3"
title="text-decoration-line:none"><strong>11.1.1.</strong></a>
<li>text-decoration-skip, <a href="#text-decoration-skip0"
@@ -6915,7 +6773,7 @@
<li>text-decoration-skip:ink, <a href="#ink"
title="text-decoration-skip:ink"><strong>11.1.5.</strong></a>
- <li>text-decoration-skip:none, <a href="#none5"
+ <li>text-decoration-skip:none, <a href="#none4"
title="text-decoration-skip:none"><strong>11.1.5.</strong></a>
<li>text-decoration-skip:objects, <a href="#objects"
@@ -6954,7 +6812,7 @@
<li>text-emphasis:left, <a href="#left0"
title="text-emphasis:left"><strong>11.2.4.</strong></a>
- <li>text-emphasis:none, <a href="#none6"
+ <li>text-emphasis:none, <a href="#none5"
title="text-emphasis:none"><strong>11.2.1.</strong></a>
<li>text-emphasis:open, <a href="#open"
@@ -7010,6 +6868,33 @@
<li>text-shadow, <a href="#text-shadow0"
title=text-shadow><strong>11.3.</strong></a>
+ <li>text-spacing, <a href="#text-spacing"
+ title=text-spacing><strong>9.3.</strong></a>
+
+ <li>text-spacing:ideograph-alpha, <a href="#ideograph-alpha"
+ title="text-spacing:ideograph-alpha"><strong>9.3.</strong></a>
+
+ <li>text-spacing:ideograph-numeric, <a href="#ideograph-numeric"
+ title="text-spacing:ideograph-numeric"><strong>9.3.</strong></a>
+
+ <li>text-spacing:keep-end, <a href="#space-end"
+ title="text-spacing:keep-end"><strong>9.3.</strong></a>
+
+ <li>text-spacing:no-justify, <a href="#no-justify"
+ title="text-spacing:no-justify"><strong>9.3.</strong></a>
+
+ <li>text-spacing:normal, <a href="#normal5"
+ title="text-spacing:normal"><strong>9.3.</strong></a>
+
+ <li>text-spacing:punctuation, <a href="#punctuation"
+ title="text-spacing:punctuation"><strong>9.3.</strong></a>
+
+ <li>text-spacing:trim-end, <a href="#trim-end"
+ title="text-spacing:trim-end"><strong>9.3.</strong></a>
+
+ <li>text-spacing:trim-start, <a href="#trim-start"
+ title="text-spacing:trim-start"><strong>9.3.</strong></a>
+
<li>text-transform, <a href="#text-transform0"
title=text-transform><strong>3.1.</strong></a>
@@ -7031,24 +6916,6 @@
<li>text-transform:uppercase, <a href="#uppercase"
title="text-transform:uppercase"><strong>3.1.</strong></a>
- <li>text-trim, <a href="#text-trim"
- title=text-trim><strong>9.3.</strong></a>
-
- <li>text-trim:force-end, <a href="#force-end"
- title="text-trim:force-end"><strong>9.3.</strong></a>
-
- <li>text-trim:force-start, <a href="#force-start"
- title="text-trim:force-start"><strong>9.3.</strong></a>
-
- <li>text-trim:keep-end, <a href="#keep-end"
- title="text-trim:keep-end"><strong>9.3.</strong></a>
-
- <li>text-trim:no-justify, <a href="#no-justify"
- title="text-trim:no-justify"><strong>9.3.</strong></a>
-
- <li>text-trim:normal, <a href="#normal5"
- title="text-trim:normal"><strong>9.3.</strong></a>
-
<li>text-underline-position, <a href="#text-underline-position0"
title=text-underline-position><strong>11.1.6.</strong></a>
Index: Overview.src.html
===================================================================
RCS file: /sources/public/csswg/css3-text/Overview.src.html,v
retrieving revision 1.201
retrieving revision 1.202
diff -u -d -r1.201 -r1.202
--- Overview.src.html 13 Apr 2011 08:45:47 -0000 1.201
+++ Overview.src.html 16 Apr 2011 06:15:59 -0000 1.202
@@ -180,8 +180,7 @@
<li>the 'hyphenate-limit-*' properties
<li>the 'hyphenate-resource' property / ''@hyphenate-resource'' at-rule
<li>the 'text-outline' property
- <li>the 'text-trim' property
- <li>the 'text-autospace' property
+ <li>the 'text-spacing' property
<li><span class="issue">audit draft and add more here</span>
</ul>
@@ -717,9 +716,6 @@
the character before and after the line feed is F, W, or H (not A),
and neither side is Hangul,
then the line feed is removed.
- <li>Otherwise, if 'text-autospace' property is set to add extra spaces
- for the combination of the character before the line feed and after,
- then the line break is removed.
<li>Otherwise, the line feed is converted to a space (U+0020).
</ul>
@@ -2150,6 +2146,8 @@
<dd>An expansion opportunity exists between a pair of characters
from the Unicode symbols (S*) and punctuation (P*) classes and
at enabled <a href="#text-autospace">autospace</a> points.
+ <span class="issue">the relationship of expansion opportunity
+ and 'text-spacing' needs more review</span>
The default justification priority of these points depends on the
justification method as defined below; however there may be
additional rules controlling their justification behavior due to
@@ -2375,9 +2373,10 @@
how a text formatter can justify Japanese text.
It describes rules for cases where the 'text-justify' property is ''inter-ideograph''.
It describes rules for cases where the 'text-justify' property is ''inter-ideograph''
- and the 'text-trim' property does not specify ''no-justify''.</p>
+ and the 'text-spacing' property does not specify ''no-justify''.</p>
<p>It produces an effect similar to cases where
- the computed value of 'text-trim' property does not specify ''force-end'' or ''keep-end''.
+ the computed value of 'text-spacing' property does not specify
+ ''trim-end'' or ''space-end''.
If the UA wants to prohibit this behavior,
rule b. of 3.8.3 should be omitted.</p>
<p>Note that the rules described in the document specifically target Japanese.
@@ -2402,14 +2401,14 @@
<li>Compress the left side of <a href="#fullwidth-opening-punctuation">fullwidth opening punctuations</a>
and the right side of <a href="#fullwidth-closing-punctuation">fullwidth closing punctuations</a>
up to 1/2em.</li>
- <li>Compress spaces created by ''text-autospace'' property up to 1/8em.</li>
+ <li>Compress spaces created by 'text-spacing' property up to 1/8em.</li>
</ol></li>
<li>If the compression fails to fit the line,
take the last line break opportunity before the end of line,
and apply the following rules (in order) to expand until it fits.
<ol style="list-style-type:lower-alpha">
<li>Expand space characters up to the maximum value specified by ''word-spacing'' property, or up to 1/2em.</li>
- <li>Expand spaces created by ''text-autospace'' property up to 1/2em.</li>
+ <li>Expand spaces created by 'text-spacing' property up to 1/2em.</li>
<li>Expand all expansion opportunities as defined above in equal percent of the size of each character.</li>
</ol></li>
</ol>
@@ -2634,40 +2633,27 @@
<p>When the resulting space between two characters is not the same as the
default space, user agents should not use optional ligatures.</p>
- <h3 id="text-trim-prop">
+ <h3 id="text-spacing-prop">
<a name="punctuation-trim"></a>
- Fullwidth Kerning: the 'text-trim' property</h3>
-
- <pre class="note">
- Syntax is derived as a shorthand of the following theoretical
- properties (defaults given first):
-
- text-trim-start: keep-start | force-start
- text-trim-end: allow-end | force-end | keep-end | keep-fullstop
- text-trim-adjacent: force-adjacent | keep-adjacent
- text-trim-kana: ...
- text-trim-justify: justify | no-justify
+ <a name="text-trim-prop"></a><a name="text-trim"></a>
+ <a name="text-autospace-prop"></a><a name="text-autospace"></a>
+ Character Class Spacing: the 'text-spacing' property</h3>
- Filtering out the default values (and ignoring trim-kana),
- we get the following shorthand:
- text-trim: normal |
- force-start ||
- [ force-end | keep-end | keep-fullstop] ||
- keep-adjacent ||
- no-justify
- </pre>
<table class="propdef">
<tbody>
<tr>
<th>Name:</th>
- <td><dfn>text-trim</dfn></td>
+ <td><dfn>text-spacing</dfn></td>
</tr>
<tr>
<th>Value:</th>
- <td>normal |
- force-start ||
- [ keep-end | force-end ] ||
- no-justify
+ <td>normal ||
+ trim-start ||
+ [ trim-end | space-end ] ||
+ no-justify ||
+ ideograph-alpha ||
+ ideograph-numeric ||
+ punctuation
</td>
</tr>
<tr>
@@ -2697,24 +2683,39 @@
</tbody>
</table>
- <p>This property determines whether or not a fullwidth punctuation
- character should be trimmed (kerned). Values are defined as follows:</p>
+ <p>This property determines spacing between two characters classes.
+ The spacing may either be created or trimmed.
+ Values are defined as follows:</p>
<dl>
- <dt><dfn title="text-trim:normal">normal</dfn></dt>
+ <dt><dfn title="text-spacing:normal">normal</dfn></dt>
<dd>Trim (kern) the blank half of fullwidth closing punctuation at
the end of each line if it does not otherwise fit prior to
justification.</dd>
- <dt><dfn title="text-trim:force-start">force-start</dfn></dt>
+ <!--
+ <dd>Equivalent to ''space-start allow-end justify''.</dd>
+ -->
+ <dt><dfn title="text-spacing:trim-start">trim-start</dfn></dt>
<dd>Trim (kern) the blank half of fullwidth opening punctuation at
the beginning of each line. </dd>
- <dt><dfn title="text-trim:keep-end">keep-end</dfn></dt>
+ <!--
+ <dt><dfn title="text-spacing:space-start">space-start</dfn></dt>
<dd>Do not trim the blank half of fullwidth opening punctuation at
- the end of each line. </dd>
- <dt><dfn title="text-trim:force-end">force-end</dfn></dt>
+ the beginning of each line.</dd>
+ -->
+ <!--
+ <dt><dfn title="text-spacing:allow-end">allow-end</dfn></dt>
+ <dd>Trim (kern) the blank half of fullwidth closing punctuation at
+ the end of each line if it does not otherwise fit prior to
+ justification.</dd>
+ -->
+ <dt><dfn title="text-spacing:trim-end">trim-end</dfn></dt>
<dd>Trim (kern) the blank half of fullwidth closing punctuation at
the end of each line.</dd>
- <dt><dfn title="text-trim:no-justify">no-justify</dfn></dt>
+ <dt><dfn title="text-spacing:keep-end">space-end</dfn></dt>
+ <dd>Do not trim the blank half of fullwidth closing punctuation at
+ the end of each line. </dd>
+ <dt><dfn title="text-spacing:no-justify">no-justify</dfn></dt>
<dd>The blank portions of fullwidth punctuation must not be trimmed
during the justification process. (If this value is not specified,
the justification process may trim the blank portions of fullwidth
@@ -2723,6 +2724,25 @@
An example of compression rules is given for Japanese in
3.8 Line Adjustment in [[JLREQ]].</span>
</dd>
+ <dt><dfn title="text-spacing:ideograph-alpha">ideograph-alpha</dfn></dt>
+ <dd>Creates 1/4em extra spacing between runs of ideographic letters and
+ non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or Hebrew.
+ <span class="note">A commonly used algorithm for determining this
+ behavior is specified in [[JLREQ]]</span>
+ </dd>
+ <dt><dfn title="text-spacing:ideograph-numeric">ideograph-numeric</dfn></dt>
+ <dd>Creates 1/4em extra spacing between runs of ideographic letters and
+ non-ideographic numeric glyphs.
+ <span class="note">A commonly used algorithm for determining this
+ behavior is specified in [[JLREQ]]</span>
+ </dd>
+ <dt><dfn title="text-spacing:punctuation">punctuation</dfn>
+ <dd>Creates extra non-breaking spacing around punctuation as required by
+ language-specific typographic conventions. For example, if the
+ element's content language is French, narrow no-break space (U+202F)
+ and no-break space (U+00A0) should be inserted where required by
+ <a href="http://unicode.org/udhr/n/notes_fra.html">French typographic
+ guidelines</a>.
</dl>
<p>In all cases, the UA must trim (kern) the blank half of fullwidth
@@ -2806,6 +2826,35 @@
<dt id="fullwidth-dot-punctuation"><dfn>fullwidth dot punctuation</dfn></dt>
<dd>Includes IDEOGRAPHIC COMMA (U+3001), IDEOGRAPHIC FULL STOP (U+3002),
FULLWIDTH COMMA (U+FF0C), FULLWIDTH FULL STOP (U+FF0E).</dd>
+ <dt><dfn>Ideographic letters</dfn></dt>
+ <dd>Includes all characters listed below:
+ <ul>
+ <li>All characters in the range of U+3041 to U+30FF,
+ except that belongs to Unicode Punctuation [P*] category.</li>
+ <li>CJK Strokes (U+31C0 to U+31EF).</li>
+ <li>Katakana Phonetic Extensions (U+31F0 to U+31FF).</li>
+ <li>All characters that belongs to Han Unicode Script Property [[!UAX24]].</li>
+ </ul>
+ </dd>
+ <dt><dfn>Non-ideographic letters</dfn></dt>
+ <dd>Includes all characters that belongs to Unicode Letters [L*] and
+ Mark [M*] category, except any of the following conditions are met:
+ <ul>
+ <li>Is defined as Ideographic letters.</li>
+ <li>Is categorized as East Asian Fullwidth (F) by [[!UAX11]].</li>
+ <li>Is upright in vertical text flow using the 'text-orientation' property
+ or the 'text-combine' property.</li>
+ </ul>
+ </dd>
+ <dt><dfn>Non-ideographic numerals</dfn></dt>
+ <dd>Includes all characters that belongs to Unicode Number, Decimal Digit
+ [Nd] category, except any of the following conditions are met:
+ <ul>
+ <li>Is categorized as East Asian Fullwidth (F) by [[!UAX11]].</li>
+ <li>Is upright in vertical text flow using the 'text-orientation' property
+ or the 'text-combine' property.</li>
+ </ul>
+ </dd>
</dl>
<p>Fullwidth opening and closing punctuation must not be trimmed if the
@@ -2852,155 +2901,33 @@
standard convention is often not followed.</p>
</div>
- <p>Support for this property is <em>optional</em>. It is strongly
- recommended for UAs that wish to support CJK typography.</p>
-
- <h3 id="text-autospace-prop">
- Adding space: the 'text-autospace' property</h3>
-
- <table class="propdef">
- <tbody>
- <tr>
- <th>Name:</th>
- <td><dfn>text-autospace</dfn></td>
- </tr>
- <tr>
- <th>Value:</th>
- <td>none | [ ideograph-numeric || ideograph-alpha || punctuation ]
- </td>
- </tr>
- <tr>
- <th>Initial:</th>
- <td>none</td>
- </tr>
- <tr>
- <th>Applies to:</th>
- <td>all elements</td>
- </tr>
- <tr>
- <th>Inherited:</th>
- <td>yes</td>
- </tr>
- <tr>
- <th>Percentages:</th>
- <td>N/A</td>
- </tr>
- <tr>
- <th>Media:</th>
- <td>visual</td>
- </tr>
- <tr>
- <th>Computed value:</th>
- <td>specified value</td>
- </tr>
- </tbody>
- </table>
-
- <p>When a run of non-ideographic or numeric characters appears inside of
- ideographic text, a certain amount of space is often preferred on both sides
- of the non-ideographic text to separate it from the surrounding ideographic
- glyphs. This property controls the creation of that space when rendering the
- text. That added width does not correspond to the insertion of additional
- space characters, but instead to the width increment of existing glyphs.
-
- <p>(A commonly used algorithm for determining this behavior is specified in
- [[JLREQ]].)
-
- <p>This property is additive with the <span class="property"><a
- href="#word-spacing">'word-spacing'</a></span> and <span class="property"><a
- href="#letter-spacing">'letter-spacing'</a></span> [[!CSS21]] properties.
- That is, the amount of spacing
- contributed by the 'letter-spacing' setting (if any) is added to the spacing
- created by <span class="property"><a
- href="#text-autospace">'text-autospace'</a></span>. The same applies to <span
- class="property"><a href="#word-spacing">'word-spacing'</a></span>.
+ <p>When creating extra spacing, the added width does not correspond to
+ the insertion of additional space characters, but instead to the width
+ increment of existing glyphs.</p>
- <p>The space added can be compressed or expanded during the justification process
- as specified in the 'text-justify' property.</p>
+ <p>This property is additive with the 'word-spacing' and 'letter-spacing'
+ properties. That is, the amount of spacing contributed by the
+ 'letter-spacing' setting (if any) is added to the spacing created by
+ 'text-spacing'. The same applies to 'word-spacing'.
<p>This property applies only to the same inline element context,
and can apply across elements if in the same inline element context.</p>
- <p>Values have the following meanings:</p>
-
- <dl>
- <dt><dfn title="text-autospace:none"><code>none</code></dfn></dt>
- <dd>No extra space is created.</dd>
- <dt><dfn title="text-autospace:ideograph-numeric"><code>ideograph-numeric</code></dfn></dt>
- <dd>Creates 1/4em extra spacing between runs of ideographic letters and
- non-ideographic numeric glyphs.
- </dd>
- <dt><dfn title="text-autospace:ideograph-alpha"><code>ideograph-alpha</code></dfn></dt>
- <dd>Creates 1/4em extra spacing between runs of ideographic letters and
- non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or Hebrew.
- </dd>
- <dt><dfn title="text-autospace:punctuation"><code>punctuation</code></dfn>
- <dd>Creates extra non-breaking spacing around punctuation as required by
- language-specific typographic conventions. For example, if the
- element's content language is French, narrow no-break space (U+202F)
- and no-break space (U+00A0) should be inserted where required by
- <a href="http://unicode.org/udhr/n/notes_fra.html">French typographic
- guidelines</a>.
- </dl>
- <p class="issue">It was requested to add a value for doubling the space after
- periods.</p>
-
<p>At element boundaries, the font size of the extra spacing
is given by and rendered within the innermost element that contains the boundary.</p>
- <p>In the context of this property the following definitions apply:</p>
- <p class="issue">Reviews and feedbacks to the classes/code points are appreciated.</p>
-
- <dl>
- <dt><dfn>Ideographic letters</dfn></dt>
- <dd>
- <ul>
- <li>All characters in the range of U+3041 to U+30FF,
- except that belongs to Unicode Punctuation [P*] category.</li>
- <li>CJK Strokes (U+31C0 to U+31EF).</li>
- <li>Katakana Phonetic Extensions (U+31F0 to U+31FF).</li>
- <li>All characters that belongs to Han Unicode Script Property [[!UAX24]].</li>
- </ul>
- </dd>
- <dt><dfn>Non-ideographic numerals</dfn></dt>
- <dd>
- <ul>
- <li>All characters that belongs to Unicode Number, Decimal Digit [Nd] category.</li>
- <li>Except any of the following conditions are met:
- <ul>
- <li>Is categorized as East Asian Fullwidth (F) by [[!UAX11]].</li>
- <li>Is upright in vertical text flow using the 'text-orientation' property
- or the 'text-combine' property.</li>
- </ul>
- </li>
- </ul>
- </dd>
- <dt><dfn>Non-ideographic letters</dfn></dt>
- <dd>
- <ul>
- <li>All characters that belongs to Unicode Letters [L*] and Mark [M*] category.</li>
- <li>Except any of the following conditions are met:
- <ul>
- <li>Is defined as Ideographic letters.</li>
- <li>Is categorized as East Asian Fullwidth (F) by [[!UAX11]].</li>
- <li>Is upright in vertical text flow using the 'text-orientation' property
- or the 'text-combine' property.</li>
- </ul>
- </li>
- </ul>
- </dd>
- </dl>
-
- <p>Support for this property is <em>optional</em>. It is recommended
- for UAs that wish to support CJK typography.</p>
+ <p>Support for this property is <em>optional</em>. It is strongly
+ recommended for UAs that wish to support CJK typography.</p>
+ <p class="issue">It was requested to add a value for doubling the space after
+ periods.</p>
<h2 id="edge-effects">
Edge Effects</h2>
<p>Edge effects control the indentation of lines with respect to other lines
in the block ('text-indent') and how content is aligned to the start and
- end edges of a line ('hanging-punctuation', see also 'text-trim').
+ end edges of a line ('hanging-punctuation', see also 'text-spacing').
<div class="example">
<p>Japanese has three common start-edge typesetting schemes, which are
@@ -3028,19 +2955,19 @@
<pre>p { /* Flush alignment */
<!-- --> margin: 0;
<!-- --> text-indent: 1em;
-<!-- --> text-trim: force-start;
+<!-- --> text-spacing: trim-start;
<!-- -->}</pre>
<li>Brackets preserve fullwidth spacing on all lines (second scheme):
<pre>p { /* Fullwidth alignment */
<!-- --> margin: 0;
<!-- --> text-indent: 1em;
-<!-- --> text-trim: normal;
+<!-- --> text-spacing: normal;
<!-- -->}</pre>
<li>Brackets hang in indent, flush with other lines (third scheme):
<pre>p { /* Hanging alignment */
<!-- --> margin: 0;
<!-- --> text-indent: 1em;
-<!-- --> text-trim: force-start;
+<!-- --> text-spacing: trim-start;
<!-- --> hanging-punctuation: first;
<!-- -->}</pre>
</ul>
@@ -4282,8 +4209,7 @@
'hyphenate-limit-lines',
'hyphenate-resources'/''@hyphenate-resource'',
'line-break',
- 'text-autospace',
- 'text-trim',
+ 'text-spacing',
'hanging-punctuation'
<p>Significant details updated:</p>
@@ -4356,10 +4282,6 @@
<td>Western, South Asian
<tr><td>'line-break'
<td>CJK (Japanese)
- <tr><td>'text-autospace'
- <td>CJK
- <tr><td>'text-autospace': ''punctuation''
- <td>European (French)
<tr><td>'text-justify': ''inter-cluster''
<td>Southeast Asian
<tr><td>'text-justify': ''inter-ideograph'', ''distribute''
@@ -4374,12 +4296,14 @@
<td>CJK
<tr><td>'text-emphasis-position'
<td>CJK
+ <tr><td>'text-spacing'
+ <td>CJK
+ <tr><td>'text-spacing': ''punctuation''
+ <td>European (French)
<tr><td>'text-transform': ''capitalize'', ''uppercase'', ''lowercase''
<td>Western
<tr><td>'text-transform': ''fullwidth'', ''fullsize-kana''
<td>CJK
- <tr><td>'text-trim'
- <td>CJK
<tr><td>'text-underline-position': ''auto''
<td>CJK
<tr><td>'word-break'
Received on Saturday, 16 April 2011 06:16:06 UTC