wpt / css / css-backgrounds / animations / background-position-x-interpolation.html

Status: FAIL | Duration: 384ms | Subtests: 84/112 | Open test on wpt.live | wpt.fyi

Data from commit:
a50cb89 wpt: run reference-named files which are themselves tests (#836) (2026-09-03)

SubtestStatusMessage
CSS Transitions: property <background-position-x> from neutral to [80px] at (-0.25) should be [30px]PASS
CSS Transitions: property <background-position-x> from neutral to [80px] at (0) should be [40px]PASS
CSS Transitions: property <background-position-x> from neutral to [80px] at (0.25) should be [50px]PASS
CSS Transitions: property <background-position-x> from neutral to [80px] at (0.5) should be [60px]PASS
CSS Transitions: property <background-position-x> from neutral to [80px] at (0.75) should be [70px]PASS
CSS Transitions: property <background-position-x> from neutral to [80px] at (1) should be [80px]PASS
CSS Transitions: property <background-position-x> from neutral to [80px] at (1.25) should be [90px]PASS
CSS Transitions with transition: all: property <background-position-x> from neutral to [80px] at (-0.25) should be [30px]PASS
CSS Transitions with transition: all: property <background-position-x> from neutral to [80px] at (0) should be [40px]PASS
CSS Transitions with transition: all: property <background-position-x> from neutral to [80px] at (0.25) should be [50px]PASS
CSS Transitions with transition: all: property <background-position-x> from neutral to [80px] at (0.5) should be [60px]PASS
CSS Transitions with transition: all: property <background-position-x> from neutral to [80px] at (0.75) should be [70px]PASS
CSS Transitions with transition: all: property <background-position-x> from neutral to [80px] at (1) should be [80px]PASS
CSS Transitions with transition: all: property <background-position-x> from neutral to [80px] at (1.25) should be [90px]PASS
CSS Animations: property <background-position-x> from neutral to [80px] at (-0.25) should be [30px]PASS
CSS Animations: property <background-position-x> from neutral to [80px] at (0) should be [40px]PASS
CSS Animations: property <background-position-x> from neutral to [80px] at (0.25) should be [50px]PASS
CSS Animations: property <background-position-x> from neutral to [80px] at (0.5) should be [60px]PASS
CSS Animations: property <background-position-x> from neutral to [80px] at (0.75) should be [70px]PASS
CSS Animations: property <background-position-x> from neutral to [80px] at (1) should be [80px]PASS
CSS Animations: property <background-position-x> from neutral to [80px] at (1.25) should be [90px]PASS
Web Animations: property <background-position-x> from neutral to [80px] at (-0.25) should be [30px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from neutral to [80px] at (0) should be [40px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from neutral to [80px] at (0.25) should be [50px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from neutral to [80px] at (0.5) should be [60px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from neutral to [80px] at (0.75) should be [70px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from neutral to [80px] at (1) should be [80px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from neutral to [80px] at (1.25) should be [90px]FAILassert_true: Web Animations should be supported expected true got false
CSS Transitions: property <background-position-x> from [initial] to [right] at (-0.25) should be [-25%]PASS
CSS Transitions: property <background-position-x> from [initial] to [right] at (0) should be [0%]PASS
CSS Transitions: property <background-position-x> from [initial] to [right] at (0.25) should be [25%]PASS
CSS Transitions: property <background-position-x> from [initial] to [right] at (0.5) should be [50%]PASS
CSS Transitions: property <background-position-x> from [initial] to [right] at (0.75) should be [75%]PASS
CSS Transitions: property <background-position-x> from [initial] to [right] at (1) should be [100%]PASS
CSS Transitions: property <background-position-x> from [initial] to [right] at (1.25) should be [125%]PASS
CSS Transitions with transition: all: property <background-position-x> from [initial] to [right] at (-0.25) should be [-25%]PASS
CSS Transitions with transition: all: property <background-position-x> from [initial] to [right] at (0) should be [0%]PASS
CSS Transitions with transition: all: property <background-position-x> from [initial] to [right] at (0.25) should be [25%]PASS
CSS Transitions with transition: all: property <background-position-x> from [initial] to [right] at (0.5) should be [50%]PASS
CSS Transitions with transition: all: property <background-position-x> from [initial] to [right] at (0.75) should be [75%]PASS
CSS Transitions with transition: all: property <background-position-x> from [initial] to [right] at (1) should be [100%]PASS
CSS Transitions with transition: all: property <background-position-x> from [initial] to [right] at (1.25) should be [125%]PASS
CSS Animations: property <background-position-x> from [initial] to [right] at (-0.25) should be [-25%]PASS
CSS Animations: property <background-position-x> from [initial] to [right] at (0) should be [0%]PASS
CSS Animations: property <background-position-x> from [initial] to [right] at (0.25) should be [25%]PASS
CSS Animations: property <background-position-x> from [initial] to [right] at (0.5) should be [50%]PASS
CSS Animations: property <background-position-x> from [initial] to [right] at (0.75) should be [75%]PASS
CSS Animations: property <background-position-x> from [initial] to [right] at (1) should be [100%]PASS
CSS Animations: property <background-position-x> from [initial] to [right] at (1.25) should be [125%]PASS
Web Animations: property <background-position-x> from [initial] to [right] at (-0.25) should be [-25%]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [initial] to [right] at (0) should be [0%]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [initial] to [right] at (0.25) should be [25%]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [initial] to [right] at (0.5) should be [50%]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [initial] to [right] at (0.75) should be [75%]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [initial] to [right] at (1) should be [100%]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [initial] to [right] at (1.25) should be [125%]FAILassert_true: Web Animations should be supported expected true got false
CSS Transitions: property <background-position-x> from [inherit] to [80px] at (-0.25) should be [55px]PASS
CSS Transitions: property <background-position-x> from [inherit] to [80px] at (0) should be [60px]PASS
CSS Transitions: property <background-position-x> from [inherit] to [80px] at (0.25) should be [65px]PASS
CSS Transitions: property <background-position-x> from [inherit] to [80px] at (0.5) should be [70px]PASS
CSS Transitions: property <background-position-x> from [inherit] to [80px] at (0.75) should be [75px]PASS
CSS Transitions: property <background-position-x> from [inherit] to [80px] at (1) should be [80px]PASS
CSS Transitions: property <background-position-x> from [inherit] to [80px] at (1.25) should be [85px]PASS
CSS Transitions with transition: all: property <background-position-x> from [inherit] to [80px] at (-0.25) should be [55px]PASS
CSS Transitions with transition: all: property <background-position-x> from [inherit] to [80px] at (0) should be [60px]PASS
CSS Transitions with transition: all: property <background-position-x> from [inherit] to [80px] at (0.25) should be [65px]PASS
CSS Transitions with transition: all: property <background-position-x> from [inherit] to [80px] at (0.5) should be [70px]PASS
CSS Transitions with transition: all: property <background-position-x> from [inherit] to [80px] at (0.75) should be [75px]PASS
CSS Transitions with transition: all: property <background-position-x> from [inherit] to [80px] at (1) should be [80px]PASS
CSS Transitions with transition: all: property <background-position-x> from [inherit] to [80px] at (1.25) should be [85px]PASS
CSS Animations: property <background-position-x> from [inherit] to [80px] at (-0.25) should be [55px]PASS
CSS Animations: property <background-position-x> from [inherit] to [80px] at (0) should be [60px]PASS
CSS Animations: property <background-position-x> from [inherit] to [80px] at (0.25) should be [65px]PASS
CSS Animations: property <background-position-x> from [inherit] to [80px] at (0.5) should be [70px]PASS
CSS Animations: property <background-position-x> from [inherit] to [80px] at (0.75) should be [75px]PASS
CSS Animations: property <background-position-x> from [inherit] to [80px] at (1) should be [80px]PASS
CSS Animations: property <background-position-x> from [inherit] to [80px] at (1.25) should be [85px]PASS
Web Animations: property <background-position-x> from [inherit] to [80px] at (-0.25) should be [55px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [inherit] to [80px] at (0) should be [60px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [inherit] to [80px] at (0.25) should be [65px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [inherit] to [80px] at (0.5) should be [70px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [inherit] to [80px] at (0.75) should be [75px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [inherit] to [80px] at (1) should be [80px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [inherit] to [80px] at (1.25) should be [85px]FAILassert_true: Web Animations should be supported expected true got false
CSS Transitions: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px]PASS
CSS Transitions: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px]PASS
CSS Transitions: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px]PASS
CSS Transitions: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px]PASS
CSS Transitions: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px]PASS
CSS Transitions: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px]PASS
CSS Transitions: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px]PASS
CSS Transitions with transition: all: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px]PASS
CSS Transitions with transition: all: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px]PASS
CSS Transitions with transition: all: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px]PASS
CSS Transitions with transition: all: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px]PASS
CSS Transitions with transition: all: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px]PASS
CSS Transitions with transition: all: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px]PASS
CSS Transitions with transition: all: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px]PASS
CSS Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px]PASS
CSS Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px]PASS
CSS Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px]PASS
CSS Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px]PASS
CSS Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px]PASS
CSS Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px]PASS
CSS Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px]PASS
Web Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px]FAILassert_true: Web Animations should be supported expected true got false
Web Animations: property <background-position-x> from [300px, 400px] to [500px, 600px, 700px] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px]FAILassert_true: Web Animations should be supported expected true got false

/css/css-backgrounds/animations/background-position-x-interpolation.html

<!DOCTYPE html>
<meta charset="UTF-8">
<link rel="help" href="https://drafts.csswg.org/css-backgrounds-3/#background-position">
<meta name="test" content="background-position-x supports animation">

<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/interpolation-testcommon.js"></script>

<style>
.parent {
  background-position-x: 60px;
}

.target {
  background-position-x: 40px;
}
</style>

<body>
<script>
test_interpolation({
  property: 'background-position-x',
  from: neutralKeyframe,
  to: '80px',
}, [
  {at: -0.25, expect: '30px'},
  {at: 0, expect:     '40px'},
  {at: 0.25, expect:  '50px'},
  {at: 0.5, expect:   '60px'},
  {at: 0.75, expect:  '70px'},
  {at: 1, expect:     '80px'},
  {at: 1.25, expect:  '90px'},
]);

test_interpolation({
  property: 'background-position-x',
  from: 'initial',
  to: 'right',
}, [
  {at: -0.25, expect: '-25%'},
  {at: 0, expect:     '0%'},
  {at: 0.25, expect:  '25%'},
  {at: 0.5, expect:   '50%'},
  {at: 0.75, expect:  '75%'},
  {at: 1, expect:     '100%'},
  {at: 1.25, expect:  '125%'},
]);

test_interpolation({
  property: 'background-position-x',
  from: 'inherit',
  to: '80px',
}, [
  {at: -0.25, expect: '55px'},
  {at: 0, expect:     '60px'},
  {at: 0.25, expect:  '65px'},
  {at: 0.5, expect:   '70px'},
  {at: 0.75, expect:  '75px'},
  {at: 1, expect:     '80px'},
  {at: 1.25, expect:  '85px'},
]);

test_interpolation({
  property: 'background-position-x',
  from: '300px, 400px',
  to: '500px, 600px, 700px',
}, [
  {at: -0.25, expect: '250px, 350px, 200px, 375px, 225px, 325px'},
  {at: 0, expect:     '300px, 400px, 300px, 400px, 300px, 400px'},
  {at: 0.25, expect:  '350px, 450px, 400px, 425px, 375px, 475px'},
  {at: 0.5, expect:   '400px, 500px, 500px, 450px, 450px, 550px'},
  {at: 0.75, expect:  '450px, 550px, 600px, 475px, 525px, 625px'},
  {at: 1, expect:     '500px, 600px, 700px, 500px, 600px, 700px'},
  {at: 1.25, expect:  '550px, 650px, 800px, 525px, 675px, 775px'},
]);
</script>
</body>