CSS: will-change offset-path should establish a containing block |
||||||
Issue descriptionIf an element's style has will-change: offset-path,offset-position; then it should become its children's offsetParent. (The spec for offset-path and offset-position should be updated to read more like transform, instead of filter/opacity: "Any computed value other than none for the offset-path results in the creation of both a stacking context and a containing block. The object acts as a containing block for fixed positioned descendants.")
,
Sep 29 2016
,
Sep 29 2016
This also affects the 'perspective' property, and the independent transform properties. They create a containing block when they are not their initial values. However, Blink is not currently creating a containing block when the properties are mentioned in 'will-change'. https://drafts.csswg.org/css-will-change/#will-change "If any non-initial value of a property would create a stacking context on the element, specifying that property in will-change must create a stacking context on the element. If any non-initial value of a property would cause the element to generate a containing block for absolutely positioned elements, specifying that property in will-change must cause the element to generate a containing block for absolutely positioned elements. If any non-initial value of a property would cause the element to generate a containing block for fixed positioned elements, specifying that property in will-change must cause the element to generate a containing block for fixed positioned elements." https://drafts.csswg.org/css-transforms/#transform-property "Any computed value other than none for the transform results in the creation of both a stacking context and a containing block. The object acts as a containing block for fixed positioned descendants." https://drafts.csswg.org/css-transforms/#perspective-property "The use of this property with any value other than none establishes a stacking context. It also establishes a containing block (somewhat similar to position: relative), just like the transform property does." https://drafts.csswg.org/css-transforms-2/#individual-transforms The spec for the individual transform properties should probably say something similar: "while all other values (including identity transforms like translate: 0px) create a stacking context, per usual for transforms." => "while all other values (including identity transforms like translate: 0px) create a stacking context and a containing block for absolutely positioned descendants, per usual for transforms."
,
Oct 6 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ed716b1b2ca1c3cea338deff70de61b46c5d6ec8 commit ed716b1b2ca1c3cea338deff70de61b46c5d6ec8 Author: ericwilligers <ericwilligers@chromium.org> Date: Thu Oct 06 04:34:50 2016 CSS: test that transform properties create containing block Add test that verifies 'perspective', 'translate', 'scale', 'rotate' create a containing block, just like 'transform'. Also check if listing these properties in will-change causes a containing block to be created. (These checks currently fail - see bug.) BUG= 650607 Review-Url: https://codereview.chromium.org/2380723003 Cr-Commit-Position: refs/heads/master@{#423431} [add] https://crrev.com/ed716b1b2ca1c3cea338deff70de61b46c5d6ec8/third_party/WebKit/LayoutTests/transforms/containing-block-expected.txt [add] https://crrev.com/ed716b1b2ca1c3cea338deff70de61b46c5d6ec8/third_party/WebKit/LayoutTests/transforms/containing-block.html
,
Oct 11 2016
,
Oct 12 2016
Created pull request for independent transform properties spec https://github.com/w3c/csswg-drafts/pull/587 Proposed Blink change for will-change: translate, etc.: https://codereview.chromium.org/2404213003/
,
Oct 27 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ed716b1b2ca1c3cea338deff70de61b46c5d6ec8 commit ed716b1b2ca1c3cea338deff70de61b46c5d6ec8 Author: ericwilligers <ericwilligers@chromium.org> Date: Thu Oct 06 04:34:50 2016 CSS: test that transform properties create containing block Add test that verifies 'perspective', 'translate', 'scale', 'rotate' create a containing block, just like 'transform'. Also check if listing these properties in will-change causes a containing block to be created. (These checks currently fail - see bug.) BUG= 650607 Review-Url: https://codereview.chromium.org/2380723003 Cr-Commit-Position: refs/heads/master@{#423431} [add] https://crrev.com/ed716b1b2ca1c3cea338deff70de61b46c5d6ec8/third_party/WebKit/LayoutTests/transforms/containing-block-expected.txt [add] https://crrev.com/ed716b1b2ca1c3cea338deff70de61b46c5d6ec8/third_party/WebKit/LayoutTests/transforms/containing-block.html
,
Nov 4 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/96cb4a9eeec773741f99097ee395f3098ead57a6 commit 96cb4a9eeec773741f99097ee395f3098ead57a6 Author: ericwilligers <ericwilligers@chromium.org> Date: Fri Nov 04 08:35:09 2016 CSS will-change: Mentioning transform properties gives containing block We already create a containing block if 'perspective' or one of the indepedent transform properties is not their initial value. Now we also create a containing block if these properties are mentioned in 'will-change'. https://drafts.csswg.org/css-will-change/#will-change "If any non-initial value of a property would cause the element to generate a containing block for fixed positioned elements, specifying that property in will-change must cause the element to generate a containing block for fixed positioned elements." BUG= 650607 Review-Url: https://codereview.chromium.org/2404213003 Cr-Commit-Position: refs/heads/master@{#429832} [delete] https://crrev.com/b2ec72a07fa76dbd61e35f6c1fbe7b446ed6b890/third_party/WebKit/LayoutTests/transforms/containing-block-expected.txt [modify] https://crrev.com/96cb4a9eeec773741f99097ee395f3098ead57a6/third_party/WebKit/Source/core/style/ComputedStyle.cpp
,
Nov 4 2016
,
Nov 4 2016
[Automated comment] removing mislabelled merge-merged-2840 |
||||||
►
Sign in to add a comment |
||||||
Comment 1 by dstockwell@chromium.org
, Sep 29 2016