LibWeb: Parse and propagate white-space-collapse CSS property

This commit is contained in:
Callum Law
2025-05-16 18:32:31 +12:00
committed by Jelle Raaijmakers
parent 3989059227
commit ea30356fba
Notes: github-actions[bot] 2025-05-29 10:06:12 +00:00
17 changed files with 321 additions and 180 deletions

View File

@@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Text: getComputedStyle().whiteSpace</title>
<link rel="help" href="https://www.w3.org/TR/css-text-3/#propdef-white-space">
<meta name="assert" content="white-space computed value is specified keyword.">
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../../css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("white-space-collapse", "collapse");
test_computed_value("white-space-collapse", "preserve");
test_computed_value("white-space-collapse", "preserve-breaks");
test_computed_value("white-space-collapse", "break-spaces");
</script>
</body>
</html>

View File

@@ -0,0 +1,23 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Text Module Test: parsing white-space-collapse with invalid values</title>
<link rel="author" title="Koji Ishii" href="mailto:kojii@chromium.org">
<link rel="help" href="https://drafts.csswg.org/css-text-4/#white-space-collapsing">
<meta name="assert" content="white-space-collapse supports only the grammar 'collapse | discard | preserve | preserve-breaks | preserve-spaces | break-spaces'.">
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../../css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
test_invalid_value("white-space-collapse", "auto");
test_invalid_value("white-space-collapse", "none");
test_invalid_value("white-space-collapse", "collapse preserve");
test_invalid_value("white-space-collapse", "preserve preserve-breaks");
test_invalid_value("white-space-collapse", "delicious collapse");
test_invalid_value("white-space-collapse", "5px");
</script>
</body>
</html>

View File

@@ -0,0 +1,26 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Text Module Test: parsing white-space-collapse with valid values</title>
<link rel="author" title="Koji Ishii" href="mailto:kojii@chromium.org">
<link rel="help" href="https://drafts.csswg.org/css-text-4/#white-space-collapsing">
<meta name="assert" content="white-space-collapse supports the full grammar 'collapse | discard | preserve | preserve-breaks | preserve-spaces | break-spaces'.">
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../../css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
test_valid_value("white-space-collapse", "collapse");
test_valid_value("white-space-collapse", "preserve");
test_valid_value("white-space-collapse", "preserve-breaks");
test_valid_value("white-space-collapse", "break-spaces");
test_valid_value("white-space-collapse", "initial");
test_valid_value("white-space-collapse", "inherit");
test_valid_value("white-space-collapse", "unset");
test_valid_value("white-space-collapse", "revert");
test_valid_value("white-space-collapse", "revert-layer");
</script>
</body>
</html>