[csswg-drafts] [css-text] Clarification on the trimming and positioning of whitespace (#9307)

yarusome has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-text] Clarification on the trimming and positioning of whitespace ==
In [4.1.2. Phase II: Trimming and Positioning](https://drafts.csswg.org/css-text/#white-space-phase-2):

> Then, the entire block is rendered. Inlines are laid out,[…] and wrapping as specified by the `white-space` property. As each line is laid out,
> […]
> 3. A sequence of collapsible spaces at the end of a line is removed,[…]

Given the above procedure, the markup:

```html
<style>div {
  border: solid;
  font-family: monospace;
  width: 1ch;
}</style>
<div>a b</div>
```

would first have `<div>` broken into two lines: `a ` (`a` followed by a space) and `b`, then the space would be *removed*.

However, removing the space:

1. is clearly different from what UAs currently do;

2. is contradictory to [UAX #14](https://www.unicode.org/reports/tr14/#SP);

3. renders the first case in Step 4 in 4.1.2. Phase II: Trimming and Positioning unreachable:

   > If `white-space` is set to `normal`, `nowrap`, or `pre-line`, the UA must hang this sequence (unconditionally).

So what's the correct interpretation of Step 3?

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/9307 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Monday, 4 September 2023 15:05:22 UTC