blob: 9c869f87cb7cb1476166c346bc1d5bdea3422e68 [file] [log] [blame]
<!DOCTYPE html>
<meta charset="UTF-8">
<style>
.parent {
--percentage: 30%;
}
.target {
--percentage: 10%;
}
</style>
<body>
<script src="../interpolation/resources/interpolation-test.js"></script>
<script>
CSS.registerProperty({
name: '--percentage',
syntax: '<percentage>',
initialValue: '40%',
inherits: false,
});
assertInterpolation({
property: '--percentage',
from: neutralKeyframe,
to: '20%',
}, [
{at: -0.3, is: '7%'},
{at: 0, is: '10%'},
{at: 0.5, is: '15%'},
{at: 1, is: '20%'},
{at: 1.5, is: '25%'},
]);
assertInterpolation({
property: '--percentage',
from: 'initial',
to: '20%',
}, [
{at: -0.3, is: '46%'},
{at: 0, is: '40%'},
{at: 0.5, is: '30%'},
{at: 1, is: '20%'},
{at: 1.5, is: '10%'},
]);
assertInterpolation({
property: '--percentage',
from: 'inherit',
to: '20%',
}, [
{at: -0.3, is: '33%'},
{at: 0, is: '30%'},
{at: 0.5, is: '25%'},
{at: 1, is: '20%'},
{at: 1.5, is: '15%'},
]);
assertInterpolation({
property: '--percentage',
from: 'unset',
to: '20%',
}, [
{at: -0.3, is: '46%'},
{at: 0, is: '40%'},
{at: 0.5, is: '30%'},
{at: 1, is: '20%'},
{at: 1.5, is: '10%'},
]);
assertInterpolation({
property: '--percentage',
from: '-10%',
to: '10%',
}, [
{at: -0.3, is: '-16%'},
{at: 0, is: '-10%'},
{at: 0.5, is: '0%'},
{at: 1, is: '10%'},
{at: 1.5, is: '20%'},
]);
</script>
</body>