diff --git a/layout/generic/nsFrame.cpp b/layout/generic/nsFrame.cpp
index 3c610b6ee14..e36e2b9864d 100644
--- a/layout/generic/nsFrame.cpp
+++ b/layout/generic/nsFrame.cpp
@@ -2313,7 +2313,6 @@ 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)) ||
diff --git a/layout/reftests/css-blending/blend-isolation-ref.html b/layout/reftests/css-blending/blend-isolation-ref.html
deleted file mode 100644
index e4d76e534d3..00000000000
--- a/layout/reftests/css-blending/blend-isolation-ref.html
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
diff --git a/layout/reftests/css-blending/blend-isolation.html b/layout/reftests/css-blending/blend-isolation.html
deleted file mode 100644
index 802d7fd97da..00000000000
--- a/layout/reftests/css-blending/blend-isolation.html
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
diff --git a/layout/reftests/css-blending/reftest.list b/layout/reftests/css-blending/reftest.list
index 849a31088bc..f40835ceded 100644
--- a/layout/reftests/css-blending/reftest.list
+++ b/layout/reftests/css-blending/reftest.list
@@ -84,6 +84,3 @@ 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
diff --git a/layout/style/nsCSSKeywordList.h b/layout/style/nsCSSKeywordList.h
index bd9d9abab6d..fc6cbf7d346 100644
--- a/layout/style/nsCSSKeywordList.h
+++ b/layout/style/nsCSSKeywordList.h
@@ -311,7 +311,6 @@ CSS_KEY(inline-table, inline_table)
CSS_KEY(inset, inset)
CSS_KEY(inside, inside)
CSS_KEY(interpolatematrix, interpolatematrix)
-CSS_KEY(isolate, isolate)
CSS_KEY(invert, invert)
CSS_KEY(italic, italic)
CSS_KEY(japanese-formal, japanese_formal)
diff --git a/layout/style/nsCSSPropList.h b/layout/style/nsCSSPropList.h
index eb27aa504ab..cf57c9e65ed 100644
--- a/layout/style/nsCSSPropList.h
+++ b/layout/style/nsCSSPropList.h
@@ -2521,17 +2521,6 @@ CSS_PROP_DISPLAY(
kBlendModeKTable,
CSS_PROP_NO_OFFSET,
eStyleAnimType_None)
-CSS_PROP_DISPLAY(
- isolation,
- isolation,
- Isolation,
- CSS_PROPERTY_PARSE_VALUE |
- CSS_PROPERTY_CREATES_STACKING_CONTEXT,
- "layout.css.isolation.enabled",
- VARIANT_HK,
- kIsolationKTable,
- CSS_PROP_NO_OFFSET,
- eStyleAnimType_None)
CSS_PROP_POSITION(
object-fit,
object_fit,
diff --git a/layout/style/nsCSSProps.cpp b/layout/style/nsCSSProps.cpp
index 43c3a0b2d01..24d99a18316 100644
--- a/layout/style/nsCSSProps.cpp
+++ b/layout/style/nsCSSProps.cpp
@@ -1347,12 +1347,6 @@ const KTableValue nsCSSProps::kImageOrientationFlipKTable[] = {
eCSSKeyword_UNKNOWN,-1
};
-const KTableValue nsCSSProps::kIsolationKTable[] = {
- eCSSKeyword_auto, NS_STYLE_ISOLATION_AUTO,
- eCSSKeyword_isolate, NS_STYLE_ISOLATION_ISOLATE,
- eCSSKeyword_UNKNOWN,-1
-};
-
const KTableValue nsCSSProps::kIMEModeKTable[] = {
eCSSKeyword_normal, NS_STYLE_IME_MODE_NORMAL,
eCSSKeyword_auto, NS_STYLE_IME_MODE_AUTO,
diff --git a/layout/style/nsCSSProps.h b/layout/style/nsCSSProps.h
index 4856ee543cf..c96df53fd41 100644
--- a/layout/style/nsCSSProps.h
+++ b/layout/style/nsCSSProps.h
@@ -594,7 +594,6 @@ public:
static const KTableValue kGridTrackBreadthKTable[];
static const KTableValue kImageOrientationKTable[];
static const KTableValue kImageOrientationFlipKTable[];
- static const KTableValue kIsolationKTable[];
static const KTableValue kIMEModeKTable[];
static const KTableValue kLineHeightKTable[];
static const KTableValue kListStylePositionKTable[];
diff --git a/layout/style/nsComputedDOMStyle.cpp b/layout/style/nsComputedDOMStyle.cpp
index 6b4f6f3db76..7c77d051f30 100644
--- a/layout/style/nsComputedDOMStyle.cpp
+++ b/layout/style/nsComputedDOMStyle.cpp
@@ -4228,15 +4228,6 @@ nsComputedDOMStyle::DoGetMixBlendMode()
return val;
}
-CSSValue*
-nsComputedDOMStyle::DoGetIsolation()
-{
- nsROCSSPrimitiveValue* val = new nsROCSSPrimitiveValue;
- val->SetIdent(nsCSSProps::ValueToKeywordEnum(StyleDisplay()->mIsolation,
- nsCSSProps::kIsolationKTable));
- return val;
-}
-
CSSValue*
nsComputedDOMStyle::DoGetObjectFit()
{
diff --git a/layout/style/nsComputedDOMStyle.h b/layout/style/nsComputedDOMStyle.h
index 5ea0dd9a93a..955c8ef09ae 100644
--- a/layout/style/nsComputedDOMStyle.h
+++ b/layout/style/nsComputedDOMStyle.h
@@ -235,7 +235,6 @@ private:
mozilla::dom::CSSValue* DoGetMinHeight();
mozilla::dom::CSSValue* DoGetMinWidth();
mozilla::dom::CSSValue* DoGetMixBlendMode();
- mozilla::dom::CSSValue* DoGetIsolation();
mozilla::dom::CSSValue* DoGetObjectFit();
mozilla::dom::CSSValue* DoGetObjectPosition();
mozilla::dom::CSSValue* DoGetLeft();
diff --git a/layout/style/nsComputedDOMStylePropertyList.h b/layout/style/nsComputedDOMStylePropertyList.h
index 3cc21b5a46c..eea00f52bd7 100644
--- a/layout/style/nsComputedDOMStylePropertyList.h
+++ b/layout/style/nsComputedDOMStylePropertyList.h
@@ -146,7 +146,6 @@ COMPUTED_STYLE_PROP(grid_template_rows, GridTemplateRows)
COMPUTED_STYLE_PROP(height, Height)
COMPUTED_STYLE_PROP(image_orientation, ImageOrientation)
COMPUTED_STYLE_PROP(ime_mode, IMEMode)
-COMPUTED_STYLE_PROP(isolation, Isolation)
COMPUTED_STYLE_PROP(justify_content, JustifyContent)
COMPUTED_STYLE_PROP(left, Left)
COMPUTED_STYLE_PROP(letter_spacing, LetterSpacing)
diff --git a/layout/style/nsRuleNode.cpp b/layout/style/nsRuleNode.cpp
index 5728bac326c..acff054c4cb 100644
--- a/layout/style/nsRuleNode.cpp
+++ b/layout/style/nsRuleNode.cpp
@@ -5297,13 +5297,6 @@ nsRuleNode::ComputeDisplayData(void* aStartStruct,
parentDisplay->mMixBlendMode, NS_STYLE_BLEND_NORMAL,
0, 0, 0, 0);
- // isolation: enum, inherit, initial
- SetDiscrete(*aRuleData->ValueForIsolation(), display->mIsolation,
- canStoreInRuleTree,
- SETDSC_ENUMERATED | SETDSC_UNSET_INITIAL,
- parentDisplay->mIsolation, NS_STYLE_ISOLATION_AUTO,
- 0, 0, 0, 0);
-
// Backup original display value for calculation of a hypothetical
// box (CSS2 10.6.4/10.6.5), in addition to getting our style data right later.
// See nsHTMLReflowState::CalculateHypotheticalBox
diff --git a/layout/style/nsStyleConsts.h b/layout/style/nsStyleConsts.h
index b1885bf4102..666500e69d5 100644
--- a/layout/style/nsStyleConsts.h
+++ b/layout/style/nsStyleConsts.h
@@ -720,10 +720,6 @@ static inline mozilla::css::Side operator++(mozilla::css::Side& side, int) {
#define NS_STYLE_IMAGE_ORIENTATION_FLIP 0
#define NS_STYLE_IMAGE_ORIENTATION_FROM_IMAGE 1
-// See nsStyleDisplay
-#define NS_STYLE_ISOLATION_AUTO 0
-#define NS_STYLE_ISOLATION_ISOLATE 1
-
// See nsStylePosition.mObjectFit
#define NS_STYLE_OBJECT_FIT_FILL 0
#define NS_STYLE_OBJECT_FIT_CONTAIN 1
diff --git a/layout/style/nsStyleStruct.cpp b/layout/style/nsStyleStruct.cpp
index 274e218b0cb..f5de0aba0d6 100644
--- a/layout/style/nsStyleStruct.cpp
+++ b/layout/style/nsStyleStruct.cpp
@@ -2582,7 +2582,6 @@ nsStyleDisplay::nsStyleDisplay()
mTransformStyle = NS_STYLE_TRANSFORM_STYLE_FLAT;
mOrient = NS_STYLE_ORIENT_AUTO;
mMixBlendMode = NS_STYLE_BLEND_NORMAL;
- mIsolation = NS_STYLE_ISOLATION_AUTO;
mTouchAction = NS_STYLE_TOUCH_ACTION_AUTO;
mTransitions.AppendElement();
@@ -2629,7 +2628,6 @@ nsStyleDisplay::nsStyleDisplay(const nsStyleDisplay& aSource)
, mClipFlags(aSource.mClipFlags)
, mOrient(aSource.mOrient)
, mMixBlendMode(aSource.mMixBlendMode)
- , mIsolation(aSource.mIsolation)
, mWillChangeBitField(aSource.mWillChangeBitField)
, mWillChange(aSource.mWillChange)
, mTouchAction(aSource.mTouchAction)
@@ -2728,8 +2726,7 @@ nsChangeHint nsStyleDisplay::CalcDifference(const nsStyleDisplay& aOther) const
}
}
- if (mMixBlendMode != aOther.mMixBlendMode
- || mIsolation != aOther.mIsolation) {
+ if (mMixBlendMode != aOther.mMixBlendMode) {
NS_UpdateHint(hint, nsChangeHint_RepaintFrame);
}
diff --git a/layout/style/nsStyleStruct.h b/layout/style/nsStyleStruct.h
index f077da9b872..5afe1196303 100644
--- a/layout/style/nsStyleStruct.h
+++ b/layout/style/nsStyleStruct.h
@@ -2023,7 +2023,6 @@ struct nsStyleDisplay {
uint8_t mClipFlags; // [reset] see nsStyleConsts.h
uint8_t mOrient; // [reset] see nsStyleConsts.h
uint8_t mMixBlendMode; // [reset] see nsStyleConsts.h
- uint8_t mIsolation; // [reset] see nsStyleConsts.h
uint8_t mWillChangeBitField; // [reset] see nsStyleConsts.h. Stores a
// bitfield representation of the properties
// that are frequently queried. This should
diff --git a/layout/style/test/property_database.js b/layout/style/test/property_database.js
index 04fb734ad08..0e1d3a49f58 100644
--- a/layout/style/test/property_database.js
+++ b/layout/style/test/property_database.js
@@ -5514,17 +5514,6 @@ if (SpecialPowers.getBoolPref("layout.css.mix-blend-mode.enabled")) {
};
}
-if (SpecialPowers.getBoolPref("layout.css.isolation.enabled")) {
- gCSSProperties["isolation"] = {
- domProp: "isolation",
- inherited: false,
- type: CSS_TYPE_LONGHAND,
- initial_values: [ "auto" ],
- other_values: ["isolated"],
- invalid_values: []
- };
-}
-
if (SpecialPowers.getBoolPref("layout.css.background-blend-mode.enabled")) {
gCSSProperties["background-blend-mode"] = {
domProp: "backgroundBlendMode",
diff --git a/layout/style/test/test_computed_style_prefs.html b/layout/style/test/test_computed_style_prefs.html
index 0d55857ffd3..776896d3f6a 100644
--- a/layout/style/test/test_computed_style_prefs.html
+++ b/layout/style/test/test_computed_style_prefs.html
@@ -71,7 +71,6 @@ var gProps = {
"layout.css.vertical-text.enabled": ["text-combine-upright", "text-orientation", "writing-mode"],
"layout.css.image-orientation.enabled": ["image-orientation"],
"layout.css.mix-blend-mode.enabled": ["mix-blend-mode"],
- "layout.css.isolation.enabled": [ "isolation"],
"layout.css.masking.enabled": ["mask-type"],
"layout.css.touch_action.enabled": ["touch-action"]
};
diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
index 6486e9351aa..1ba49b680e5 100644
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -2018,9 +2018,6 @@ pref("layout.css.masking.enabled", true);
// Is support for mix-blend-mode enabled?
pref("layout.css.mix-blend-mode.enabled", true);
-// Is support for isolation enabled?
-pref("layout.css.isolation.enabled", false);
-
// Is support for CSS Filters enabled?
pref("layout.css.filters.enabled", true);