diff --git a/components/style/values/specified/angle.rs b/components/style/values/specified/angle.rs index 7f6c1a9dca4..212aa5fb03b 100644 --- a/components/style/values/specified/angle.rs +++ b/components/style/values/specified/angle.rs @@ -114,7 +114,14 @@ impl ToComputedValue for Angle { #[inline] fn to_computed_value(&self, _context: &Context) -> Self::ComputedValue { - ComputedAngle::from_degrees(crate::values::normalize(self.degrees())) + let degrees = self.degrees(); + + // NaN and +-infinity should degenerate to 0: https://github.com/w3c/csswg-drafts/issues/6105 + ComputedAngle::from_degrees(if degrees.is_finite() { + degrees + } else { + 0.0 + }) } #[inline]