- From: Emilio Cobos Álvarez <emilio@mozilla.com>
- Date: Wed, 2 Aug 2023 11:44:20 +0200
- To: David Baron <dbaron@chromium.org>
- Cc: www-archive@w3.org
Hey David,
On 8/1/23 21:16, David Baron wrote:
> Is that what you were talking about as something being hardcoded to
> display:block, and does that conclusion make sense to you?
That style attribute bit seems fine to me. In fact we might not need a
UA sheet, I think even with the style attribute styles from ::part()
would override it (unless !important), so you wouldn't need the UA sheet.
The concerning bit is a bit earlier in the rendering section. In
particular "The details element is expected to render as a block box.".
Right now, if you set `details { display: flex }`, that does nothing.
That is, details never honors the display property. I think that needs
fixing as part of your work on details styling.
For reference, this is where it happens in engines right now:
*
https://searchfox.org/mozilla-central/rev/85269d4444c2553e7f4c669fe4de72d64f4fe438/layout/base/nsCSSFrameConstructor.cpp#3257
*
https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/html/html_details_element.cc;l=68;drc=a0ae2623dc2e4ebd136270afaa5b53eeec21df49
*
https://searchfox.org/wubkat/rev/95275b6303a95e64547d39b4462946a4df9103c9/Source/WebCore/html/HTMLDetailsElement.cpp#97-100
Even if we expose the internal parts, there's no good way to lay them
out using flexbox / grid / etc if we don't fix that.
Cheers,
-- Emilio
Received on Wednesday, 2 August 2023 09:44:31 UTC