Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!doctype html>
<title>@container: originating element container for highlight pseudo elements</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="support/cq-testcommon.js"></script>
<style>
#target { container-type: inline-size; }
#target::highlight(foo) {
text-decoration-line: underline;
text-decoration-thickness: 0px;
}
@container (width >= 300px) {
#target::highlight(foo) {
text-decoration-line: underline;
text-decoration-thickness: 10cqw;
}
#target::highlight(bar) {
text-decoration-line: underline;
text-decoration-thickness: 10cqw;
}
}
</style>
<div id="outer" style="width: 200px">
<div id="target"></div>
</div>
<script>
setup(() => assert_implements_container_queries());
test(() => {
assert_equals(getComputedStyle(target, "::highlight(foo)").textDecorationThickness, "0px");
}, `Initial text-decoration-thickness for highlight pseudo`);
outer.style.width = "300px";
test(() => {
assert_equals(getComputedStyle(target, "::highlight(foo)").textDecorationThickness, "30px");
}, `text-decoration-thickness for highlight pseudo depending on container`);
test(() => {
assert_equals(getComputedStyle(target, "::highlight(bar)").textDecorationThickness, "30px");
}, `text-decoration-thickness for highlight pseudo depending on container only defined in a query`);
</script>