gecko-dev/layout/reftests/first-line/first-line-in-columnset-1-ref.html
Boris Zbarsky a5f876dcd4 Bug 1324619 part 3. Implement ReparentStyleContext in ServoRestyleManager, for ::first-line use. r=emilio
This doesn't actually implement style context reparenting in the style set yet; that part is next.

There is one behavior difference being introduced here compared to Gecko: we
don't reparent the first block piece of an {ib} (block-inside-inline) split
whose first inline piece is being reparented.  This is actually a correctness
fix.  In this testcase:

  <style>
    #target { color: green; }
    #target::first-line { color: red; }
  </style>
  <div id="target">
    <span>
      <div>This should be green</div>
    </span>
  </div>

Gecko makes the text red, while every other browser makes it green.

We're preserving Gecko's behavior for out-of-flows in first-line so far, but
arguably it's wrong per spec and doesn't match other browsers either.  We can
look into changing it later.

MozReview-Commit-ID: 5eC6G449Mlh

--HG--
extra : rebase_source : 8c333a0afe96c68a4e3b6aeca1b742ef8d5edd3b
2017-07-28 21:11:18 -04:00

9 lines
228 B
HTML

<!DOCTYPE html>
<style>
div { color: red; border: 10px solid green; column-count: 2 }
div::first-line { color: green; border: 10px solid red; }
</style>
<div>
<span style="border: 10px solid green">Some text</span>
</div>