Re: [csswg-drafts] [css-display] How does block inside inline affect the box tree, exactly?

`text-decoration` is not actively propagated in Gecko. We collect the decorations via climbing the box tree (or frame tree in gecko's terminology) in each piece of text, as can be seen in [nsTextFrame::GetTextDecorations](https://searchfox.org/mozilla-central/rev/c217fbde244344fedfd07b57a740c694a456dbca/layout/generic/nsTextFrame.cpp#5346-5509).

The only (extra) thing we do via the style tree (element tree) is the optimization mentioned by @emilio, but that's just an optimization.

<details>
<summary>Some off-topic discussion about Gecko's decoration line implementation.</summary>
This approach allows us to draw decoration lines as what is speced in css-text-decor-3 that each decoration line is a single line among inline boxes. However, this model may not work well with css-text-decor-4 where `text-decoration-skip` makes it possible to show decoration lines crossing objects and box decorations.

We may need to rethink how that should be done for the next level when we start implementing it.
</details>


-- 
GitHub Notification of comment by upsuper
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/1477#issuecomment-375284855 using your GitHub account

Received on Thursday, 22 March 2018 12:21:28 UTC