Revision 2eec13b500aa5dc62b83f2d3ec87ed5a73d8e933 authored by Ian Kilpatrick on 26 March 2018, 18:44:58 UTC, committed by Chromium WPT Sync on 26 March 2018, 18:44:58 UTC
This allows a LayoutChild to have layout performed on it, which will
return a Fragment - with the correct inline and block sizes.

These Fragments cannot be positioned yet, (next patch).

The LayoutChild will be laid out with an available inline/block size of
zero by default, and optionally can accept a fixed-inline/block size,
which it must respect.

Bug: 726125
Change-Id: Ie4386b8f6cd6ccec3f9e52ff332322101058836d
Reviewed-on: https://chromium-review.googlesource.com/962870
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#545845}
1 parent a35b824
Raw File
classname-query-after-sibling-adoption.html
<!-- quirks mode -->
<html>
  <head>
    <title>Quirks mode elements with class names should remain queriable regardless of sibling adoption into standards mode documents</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <div>
      <button class="Foo"></button>
      <button class="Foo"></button>
    </div>
    <template><div class="Bar"></div></template>
    <script>
    test(function () {
      var templateDocument = document.querySelector("template").content.ownerDocument;
      assert_equals(templateDocument.compatMode, "CSS1Compat");
      assert_equals(document.compatMode, "BackCompat");
      var container = document.querySelector("div");
      var button1 = container.querySelector(".foo");
      assert_true(button1 instanceof Element);
      templateDocument.appendChild(button1);
      assert_true(templateDocument.querySelector(".Foo") instanceof Element);
      assert_false(templateDocument.querySelector(".foo") instanceof Element);
      var button2byHierarchy = container.firstElementChild;
      var button2bySelector = container.querySelector(".foo");
      assert_true(button2bySelector instanceof Element);
      assert_equals(button2bySelector, button2byHierarchy);
    });
    </script>
  </body>
</html>
back to top