The HTML for a <details>
element is generally something like:
<details>
<summary>Spoiler alert!</summary>
<p>Rosebud was a sled.</p>
<p>It's true!</p>
</details>
Code language: HTML, XML (xml)
See how I put two <p>
elements in there? That’s totally fine. Everything that isn’t the <summary>
is visually hidden until the <details>
is open, either via the open
attribute or the summary is clicked/tapped.
So if you’re trying to select “all the content”, you’re either forced to use a wrapper or use an awkward selector like details > *:not(summary)
. The newly-specced ::details-content
looks like a nice fix for this. (hat tip).