- From: Anne van Kesteren via GitHub <noreply@w3.org>
- Date: Fri, 03 Apr 2026 07:53:15 +0000
- To: public-css-archive@w3.org
annevk has just created a new issue for https://github.com/w3c/csswg-drafts: == Add outline-offset: inset == While implementing `appearance: base` for `<select>` I noticed that `outline` doesn't work as-is for the `option` elements shown in `::picker(select)`. That's because it has `overflow: auto` by default, clipping the outline. So instead we need to draw the `outline` in the other direction (assuming we don't want to invent a new type of outline that's not clipped). Now for auto outlines there's no `width` so you can't use a negative `outline-offset` and even though in practice you could it would not be a cross-platform value. So ideally you have something like `inset`, which negates the used auto outline width. WebKit trunk uses such a value now for this purpose. It computes to an actual width so it doesn't violate the `outline-offset` contract, but I think if it were standardized we would want to compute to `inset` so we don't reveal the actual auto outline width value used. For non-auto outlines just negating the used width suffices. A concern in https://github.com/whatwg/html/issues/12286 was that user style sheets might have very large outline values and this would obscure their `appearance: base` `<option>`s. I think I can live with that, but I would also be okay with always imposing an upper limit of 5 CSS pixels or some such. But maybe we should only do that if it's actually becoming a problem. Not sure how many user style sheets there still are and users could also adjust `outline-width` on `<option>` if they wanted to. Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/13765 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Friday, 3 April 2026 07:53:16 UTC