зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1077872 - Implement rendering of isolation CSS property. r=roc
This commit is contained in:
Родитель
e89e3bbd8d
Коммит
632fd003a0
|
@ -2313,11 +2313,13 @@ nsIFrame::BuildDisplayListForChild(nsDisplayListBuilder* aBuilder,
|
|||
(isPositioned && (disp->mPosition == NS_STYLE_POSITION_STICKY ||
|
||||
pos->mZIndex.GetUnit() == eStyleUnit_Integer)) ||
|
||||
(disp->mWillChangeBitField & NS_STYLE_WILL_CHANGE_STACKING_CONTEXT) ||
|
||||
disp->mIsolation != NS_STYLE_ISOLATION_AUTO ||
|
||||
isVisuallyAtomic || (aFlags & DISPLAY_CHILD_FORCE_STACKING_CONTEXT);
|
||||
|
||||
if (isVisuallyAtomic || isPositioned || (!isSVG && disp->IsFloating(child)) ||
|
||||
((disp->mClipFlags & NS_STYLE_CLIP_RECT) &&
|
||||
IsSVGContentWithCSSClip(child)) ||
|
||||
disp->mIsolation != NS_STYLE_ISOLATION_AUTO ||
|
||||
(disp->mWillChangeBitField & NS_STYLE_WILL_CHANGE_STACKING_CONTEXT) ||
|
||||
(aFlags & DISPLAY_CHILD_FORCE_STACKING_CONTEXT)) {
|
||||
// If you change this, also change IsPseudoStackingContextFromStyle()
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
<!--
|
||||
Any copyright is dedicated to the Public Domain.
|
||||
http://creativecommons.org/publicdomain/zero/1.0/
|
||||
-->
|
||||
<html>
|
||||
<style>
|
||||
#a {
|
||||
background-color: rgb(0,255,0);
|
||||
width: 200px;
|
||||
height: 210px;
|
||||
}
|
||||
</style>
|
||||
<div id="a">
|
||||
</div>
|
||||
</html>
|
|
@ -0,0 +1,28 @@
|
|||
<!--
|
||||
Any copyright is dedicated to the Public Domain.
|
||||
http://creativecommons.org/publicdomain/zero/1.0/
|
||||
-->
|
||||
<html>
|
||||
<style>
|
||||
.a {
|
||||
background-color: rgb(0,255,0);
|
||||
}
|
||||
#b {
|
||||
width: 200px;
|
||||
height: 210px;
|
||||
}
|
||||
.c {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
mix-blend-mode: difference;
|
||||
}
|
||||
#d {
|
||||
isolation: isolate;
|
||||
}
|
||||
</style>
|
||||
<div id="b" class="a">
|
||||
<div id="d">
|
||||
<div class="a c"></div>
|
||||
</div>
|
||||
</div>
|
||||
</html>
|
|
@ -84,3 +84,6 @@ pref(layout.css.background-blend-mode.enabled,true) == background-blend-mode-bod
|
|||
pref(layout.css.background-blend-mode.enabled,true) == background-blend-mode-body-transparent-image.html background-blend-mode-body-transparent-image-ref.html
|
||||
|
||||
pref(layout.css.background-blend-mode.enabled,true) == background-blending-moz-element.html background-blending-moz-element-ref.html
|
||||
|
||||
# Test plan 4.4.2 element with isolation:isolate creates an isolated group for blended children
|
||||
pref(layout.css.isolation.enabled,true) == blend-isolation.html blend-isolation-ref.html
|
||||
|
|
Загрузка…
Ссылка в новой задаче