w3c / w3c/csswg-drafts

[css-lists] [css-pseudo] need to define blockification of outside markers / interaction of display: inline list-item with list-style-position

Open
#6,440 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

css-lists-3 css-pseudo-4
Dominant language
Bikeshed
Stars
4.9k
Forks
816
Avg merge
2d 18h
Merged PRs (30d)
24

Description

Outside markers are defined to create block containers. This is as of today implemented in both Gecko and Blink at least as a computed-style-time hack:

Right now that has a visible effect via getComputedStyle(element, "::marker").display (this test tests for it).

However:

  • The spec should probably say how it is implemented given it is observable.
  • That is not quite sound with display: inline list-item, because the display value may be ignored / overridden.

The last bullet point is, of course, if we agree that display: inline list-item ignores list-style-position (which Gecko does right now), but it seems a bit under-defined.

So in Gecko, I'm going to change this to be a used-value-time blockification (mostly to prevent the case where we have a block element like <details> with display: inline list-item and fail to blockify the marker). But I'm happy to adapt to whatever solution we end up with here since we're the only ones implementing inline list-item after all.

cc @Loirooriol @MatsPalmgren @jfkthame

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with css/css-pseudo/marker-display-computed.html and the linked Gecko and Blink style-adjuster implementations, then trace the existing CSS Lists and CSS Pseudo definitions for outside markers and inline list items. Done means the specification explicitly defines blockification and the interaction with list-style-position, with the existing computed-style behavior covered by the test.

Written by the indexing model from the issue text.

Assessment

Tech stack
css
Domain
documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.