- From: Oriol Brufau via GitHub <sysbot+gh@w3.org>
- Date: Thu, 24 Oct 2019 17:29:37 +0000
- To: public-css-archive@w3.org
Loirooriol has just created a new issue for https://github.com/w3c/csswg-drafts: == [css-lists] How should spaces be treated in markers? == The `white-space` property doesn't apply to markers, but how do spaces behave in markers? Consider ```html <ol> <li class="marker default inside space-1">-</li> <li class="marker default inside space-2">-</li> <li class="marker default inside space-n">-</li> <li class="marker default outside space-1">-</li> <li class="marker default outside space-2">-</li> <li class="marker default outside space-n">-</li> <li class="marker pre inside space-1">-</li> <li class="marker pre inside space-2">-</li> <li class="marker pre inside space-n">-</li> <li class="marker pre outside space-1">-</li> <li class="marker pre outside space-2">-</li> <li class="marker pre outside space-n">-</li> <li class="type default inside space-1">-</li> <li class="type default inside space-2">-</li> <li class="type default inside space-n">-</li> <li class="type default outside space-1">-</li> <li class="type default outside space-2">-</li> <li class="type default outside space-n">-</li> <li class="type pre inside space-1">-</li> <li class="type pre inside space-2">-</li> <li class="type pre inside space-n">-</li> <li class="type pre outside space-1">-</li> <li class="type pre outside space-2">-</li> <li class="type pre outside space-n">-</li> </ol> ``` ```css ol { font-family: monospace} .pre { white-space: pre } .inside { list-style-position: inside } .marker.space-1::marker { content: 'a b' } .marker.space-2::marker { content: 'a b' } .marker.space-n::marker { content: 'a\a b' } .type.space-1 { list-style-type: 'a b' } .type.space-2 { list-style-type: 'a b' } .type.space-n { list-style-type: 'a\a b' } ``` The results in Firefox, Chromium legacy and Chromium with LayoutNG and look like ``` | Firefox | Chrome leg| Chrome NG | | ------- | --------- | --------- | --------- | | marker | a b- | 1. - | 1. - | | default | a b- | 2. - | 2. - | | inside | a b- | 3. - | 3. - | | ------- | --------- | --------- | --------- | | marker | a b- | 4. - | 4. - | | default | a b- | 5. - | 5. - | | outside | a b- | 6. - | 6. - | | ------- | --------- | --------- | --------- | | marker | a b- | 7. - | 7. - | | pre | a b- | 8. - | 8. - | | inside | a | 9. - | 9. - | | | b- | | | | ------- | --------- | --------- | --------- | | marker | a b- | 10. - | 10. - | | pre | a b- | 11. - | 11. - | | outside | a | 12. - | 12. - | | | b- | | | | ------- | --------- | --------- | --------- | | type | a b- | a b- | a b- | | default | a b- | a b- | a b- | | inside | ab- | a b- | a b- | | ------- | --------- | --------- | --------- | | type | a b- | a b- | a b- | | default | a b- | a b- | a b- | | outside | ab- | a b- | a | | | | | b- | | ------- | --------- | --------- | --------- | | type | a b- | a b- | a b- | | pre | a b- | a b- | a b- | | inside | ab- | a b- | a | | | | | b- | | ------- | --------- | --------- | --------- | | type | a b- | a b- | a b- | | pre | a b- | a b- | a b- | | outside | ab- | a b- | a | | | | | b- | ``` That is: - In Firefox, - ::marker's `content` obeys the `white-space` property inherited from the list-item. - `list-style-type` ignores `white-space`, and - spaces are preserved - newlines are removed (really removed, not just collapsed) - Presumably `list-style-type` will obey `white-space` after https://bugzil.la/1542807 - In Chromium with legacy layout, - ::marker is not supported - `list-style-type` ignores `white-space`, and - spaces are preserved - newlines are collapsed into spaces. - In Chromium with LayoutNG, - ::marker is not supported - For inside positioning, `list-style-type` obeys the `white-space` property inherited from the list-item - For outside positioning, `list-style-type` uses `white-space: pre` What's the expected behavior? Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/4448 using your GitHub account
Received on Thursday, 24 October 2019 17:29:39 UTC