diff --git a/components/style/values/specified/calc.rs b/components/style/values/specified/calc.rs index 3ac81d5903c..431248f704d 100644 --- a/components/style/values/specified/calc.rs +++ b/components/style/values/specified/calc.rs @@ -372,7 +372,7 @@ impl CalcNode { ret.em = Some(ret.em.unwrap_or(0.) + em * factor); } FontRelativeLength::Ex(ex) => { - ret.ex = Some(ret.em.unwrap_or(0.) + ex * factor); + ret.ex = Some(ret.ex.unwrap_or(0.) + ex * factor); } FontRelativeLength::Ch(ch) => { ret.ch = Some(ret.ch.unwrap_or(0.) + ch * factor); diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index 237842156fb..72c1dc5e9cd 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -139305,6 +139305,18 @@ {} ] ], + "css/css-values-3/ex-calc-expression-001.html": [ + [ + "/css/css-values-3/ex-calc-expression-001.html", + [ + [ + "/css/css-values-3/ex-calc-expression-001-ref.html", + "==" + ] + ], + {} + ] + ], "css/css-values-3/initial-background-color.html": [ [ "/css/css-values-3/initial-background-color.html", @@ -245196,6 +245208,11 @@ {} ] ], + "css/css-values-3/ex-calc-expression-001-ref.html": [ + [ + {} + ] + ], "css/css-values-3/reference/200-200-green.html": [ [ {} @@ -528644,6 +528661,14 @@ "f9080ef8e6db6888e9d53b30c36e5a6234ecf0b1", "reftest" ], + "css/css-values-3/ex-calc-expression-001-ref.html": [ + "82d289ca9e58621c22249c5d5517933b3e5a2f82", + "support" + ], + "css/css-values-3/ex-calc-expression-001.html": [ + "86a53c6f9609456824c134d4c4834669adddae49", + "reftest" + ], "css/css-values-3/iframe/vh-support-transform-origin-iframe.html": [ "e295875de4bc58b51c45db9a87648749bdfc7e8d", "visual" diff --git a/tests/wpt/web-platform-tests/css/css-values-3/ex-calc-expression-001-ref.html b/tests/wpt/web-platform-tests/css/css-values-3/ex-calc-expression-001-ref.html new file mode 100644 index 00000000000..888a51ea9b6 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-values-3/ex-calc-expression-001-ref.html @@ -0,0 +1,11 @@ + +