mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-01 03:57:15 +02:00
LibWeb: Invalidate style when media content attribute changes
Previously, we would only invalidate style when setting the `media` IDL attribute; changing the attribute via `setAttribute()` and `removeAttribute()` had no immediate effect.
This commit is contained in:
committed by
Alexander Kalenik
parent
0b0f47e320
commit
e1f6a170d5
Notes:
github-actions[bot]
2025-03-22 16:04:49 +00:00
Author: https://github.com/tcl3 Commit: https://github.com/LadybirdBrowser/ladybird/commit/e1f6a170d59 Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/4047
@@ -0,0 +1,43 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Dynamically changing HTMLStyleElement.media should change the rendering accordingly</title>
|
||||
<script src="../../../../resources/testharness.js"></script>
|
||||
<script src="../../../../resources/testharnessreport.js"></script>
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-style-element">
|
||||
<style>
|
||||
span {
|
||||
color: red;
|
||||
}
|
||||
</style>
|
||||
<style id="text-style" media="none">
|
||||
span {
|
||||
color: green;
|
||||
}
|
||||
</style>
|
||||
<style id="body-style" media="aural">
|
||||
body {
|
||||
color: green;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<span>text</span>
|
||||
<script>
|
||||
test(function() {
|
||||
var element = document.querySelector("span");
|
||||
assert_equals(getComputedStyle(element).color, "rgb(255, 0, 0)");
|
||||
document.getElementById("text-style").media = 'all';
|
||||
assert_equals(getComputedStyle(element).color, "rgb(0, 128, 0)");
|
||||
}, "change media value dynamically");
|
||||
|
||||
test(function() {
|
||||
var style = document.getElementById("body-style");
|
||||
assert_not_equals(getComputedStyle(document.querySelector("body")).color, "rgb(0, 128, 0)");
|
||||
style.removeAttribute("media");
|
||||
assert_equals(getComputedStyle(document.querySelector("body")).color, "rgb(0, 128, 0)");
|
||||
}, "removing media attribute");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user