@@ -93,15 +93,19 @@ Detecting Word Boundaries: the 'word-boundary-detection' property</h4>
93
93
A <dfn data-dfn-for='' data-dfn-type=dfn>virtual word boundary</dfn> is similar to the presence
94
94
of the ZERO WIDTH SPACE (U+200B) character:
95
95
it introduces a [=soft wrap opportunity=]
96
- and is affected by the 'word-boundary-expansion' property;
97
- its presence has no effect on text shaping,
96
+ and is affected by the 'word-boundary-expansion' property.
97
+ Its presence has no effect on text shaping,
98
98
nor on 'word-spacing' .
99
- However, its insertion must have no effect on the underlying content,
99
+ However, inserting [=virtual word boundaries=] must have no effect on the underlying content,
100
100
and must not affect the content of a plain text copy & paste operation.
101
101
102
102
<dl dfn-type=value dfn-for=word-boundary-detection>
103
103
<dt> <dfn>manual</dfn>
104
104
<dd>
105
+ Linguistic analysis is <em> not</em> used
106
+ in any language or writing system
107
+ to determine line wrapping opportunities not indicated by the markup or characters of the element.
108
+
105
109
The User Agent must not insert [=virtual word boundaries=] .
106
110
107
111
[=Typographic character units=] with class SA in [[!UAX14]]
@@ -170,7 +174,8 @@ Detecting Word Boundaries: the 'word-boundary-detection' property</h4>
170
174
(see [[BCP47]] ).
171
175
If the UA does not support word-boundary detection
172
176
for <em> all</em> languages represented by the specified range,
173
- it must reject that value at parse-time.
177
+ that specified value is invalid
178
+ (and will cause the declaration to be ingored).
174
179
175
180
Note: Wildcards <em> in the language subtag</em> would imply
176
181
support for detecting word boundaries in an undefined and effectively unlimited set of languages.
@@ -197,7 +202,7 @@ Detecting Word Boundaries: the 'word-boundary-detection' property</h4>
197
202
with both the [=content language=] and <<lang>>
198
203
<i> canonicalized</i> and converted to <i> extlang form</i>
199
204
as per section 4.5 of [[!RFC5646]] ,
200
- then the [=used value=] is ''word-boundary-detection/manual '' ,
205
+ then the [=used value=] is ''word-boundary-detection/normal '' ,
201
206
and this property has no effect on this element.
202
207
Otherwise,
203
208
the User Agent must insert a [=virtual word boundary=]
@@ -224,6 +229,7 @@ Detecting Word Boundaries: the 'word-boundary-detection' property</h4>
224
229
225
230
<div class=example>
226
231
Specifying the language for which the word boundary detection is to be performed
232
+ and making unsupported language ranges invalid
227
233
is required in order to make this feature meaningfully testable with '' @supports''.
228
234
229
235
For example, Japanese text normally allows line breaking between letters of a word
@@ -349,7 +355,7 @@ Makig Word Boundaries Visible: the 'word-boundary-expansion' property</h4>
349
355
</dl>
350
356
351
357
The User Agent must not replace
352
- instances of U+200B imediately preceding or following
358
+ instances of U+200B immediately preceding or following
353
359
a [=forced line break=]
354
360
(ignoring any intervening inline box boundaries,
355
361
and associated 'margin'/'border'/'padding').
@@ -374,6 +380,10 @@ Makig Word Boundaries Visible: the 'word-boundary-expansion' property</h4>
374
380
rather than additional values to 'text-transform' because:
375
381
* This property needs to take effect before [[CSS-TEXT-3#white-space-rules]],
376
382
but 'text-transform' happens after that.
383
+ This is needed so that the spaces inserted by this property
384
+ behave as normal spaces for text layout purposes,
385
+ and can collapse with other collapsible spaces
386
+ or participate in [[css-text-3#white-space-phase-2|Trimming and Positioning]].
377
387
* The uses cases for this property and 'text-transform',
378
388
and the author's decision to apply either or both,
379
389
are independent,
0 commit comments