Files
sousa-gecko/testing/web-platform/tests/css/css-values/tree-counting/sibling-index-linear-gradient-gcs.html
T
Rune Lillesveen 14accceecd Bug 2005490 [wpt PR 56680] - Compute gradient values in image-set(), a=testonly
Automatic update from web-platform-tests
Compute gradient values in image-set()

Top level gradient values had values computed as necessary,
but not as gradients inside image-set() and cross-fade().

This CL implements resolution in CSSImageSetValue.

Bug: 466978530
Change-Id: Ib25ecaf2e78e5933081b2f72de7d74b0d00f5a3f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7245973
Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1557295}

--

wpt-commits: 0bf10b2e9b794074fd68b7eeae5ac5cd0059428e
wpt-pr: 56680
2025-12-18 08:34:41 +00:00

41 lines
1.7 KiB
HTML

<!DOCTYPE html>
<title>CSS Values Test: getComputedStyle() for linear-gradient() with sibling-index()</title>
<link rel="help" href="https://drafts.csswg.org/css-values-5/#tree-counting">
<link rel="help" href="https://drafts.csswg.org/css-values-4/#calc-serialize">
<link rel="help" href="https://drafts.csswg.org/css-images-4/#linear-gradients">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
#t1 {
background-image: linear-gradient(white, rgb(0 0 calc(sibling-index() * 200)));
}
#t2 {
background-image: cross-fade(linear-gradient(white, rgb(0 0 calc(sibling-index() * 200))) 40%, rgb(0 0 calc(sibling-index() * 200)) 60%);
}
#t3 {
background-image: image-set(linear-gradient(white, rgb(0 0 calc(sibling-index() * 200))) 1x);
}
</style>
<div>
<div id="t1"></div>
</div>
<div>
<div id="t2"></div>
</div>
<div>
<div id="t3"></div>
</div>
<script>
test(() => {
assert_equals(getComputedStyle(t1).backgroundImage, "linear-gradient(rgb(255, 255, 255), rgb(0, 0, 200))");
}, "Check that sibling-index() is resolved in serialization of computed value of linear-gradient()");
test(() => {
assert_equals(getComputedStyle(t2).backgroundImage, "cross-fade(linear-gradient(rgb(255, 255, 255), rgb(0, 0, 200)) 40%, rgb(0, 0, 200) 60%)");
}, "Check that sibling-index() is resolved in serialization of computed value of linear-gradient() inside cross-fade()");
test(() => {
assert_equals(getComputedStyle(t3).backgroundImage, "image-set(linear-gradient(rgb(255, 255, 255), rgb(0, 0, 200)) 1dppx)");
}, "Check that sibling-index() is resolved in serialization of computed value of linear-gradient() inside image-set()");
</script>