diff options
Diffstat (limited to 'components/layout/inline.rs')
-rw-r--r-- | components/layout/inline.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/components/layout/inline.rs b/components/layout/inline.rs index dfdb20e309b..ee9980c4f1a 100644 --- a/components/layout/inline.rs +++ b/components/layout/inline.rs @@ -1871,6 +1871,11 @@ impl Flow for InlineFlow { let previous_cb_clipping_and_scrolling = state.containing_block_clipping_and_scrolling; for fragment in self.fragments.fragments.iter_mut() { + // If a particular fragment would establish a stacking context but has a transform + // applied that causes it to take up no space, we can skip it entirely. + if fragment.has_non_invertible_transform() { + continue; + } state.containing_block_clipping_and_scrolling = previous_cb_clipping_and_scrolling; let abspos_containing_block = fragment.style.get_box().position != Position::Static; |