mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
54 lines
2 KiB
HTML
54 lines
2 KiB
HTML
<!DOCTYPE html>
|
|
<meta charset="utf-8">
|
|
<title>CSS Pseudo-Elements Test: Parsing tree-abiding pseudo-elements</title>
|
|
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#treelike">
|
|
<link rel="author" title="Oriol Brufau" href="mailto:obrufau@igalia.com">
|
|
<meta name="assert" content="This test checks the validity of various selectors containing tree-abiding pseudo-elements." />
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="/css/support/parsing-testcommon.js"></script>
|
|
<script>
|
|
// Generated content pseudo-elements
|
|
test_valid_selector("::before");
|
|
test_valid_selector("*::before", "::before");
|
|
test_valid_selector("foo.bar[baz]::before");
|
|
test_invalid_selector("::before *");
|
|
|
|
test_valid_selector("::after");
|
|
test_valid_selector("*::after", "::after");
|
|
test_valid_selector("foo.bar[baz]::after");
|
|
test_invalid_selector("::after *");
|
|
|
|
// List marker pseudo-element
|
|
test_valid_selector("::marker");
|
|
test_valid_selector("*::marker", "::marker");
|
|
test_valid_selector("foo.bar[baz]::marker");
|
|
test_invalid_selector("::marker *");
|
|
|
|
// Placeholder input pseudo-element
|
|
test_valid_selector("::placeholder");
|
|
test_valid_selector("*::placeholder", "::placeholder");
|
|
test_valid_selector("foo.bar[baz]::placeholder");
|
|
test_invalid_selector("::placeholder *");
|
|
|
|
// Combinations of the above
|
|
test_invalid_selector("::before::before");
|
|
test_invalid_selector("::after::before");
|
|
test_invalid_selector("::marker::before");
|
|
test_invalid_selector("::placeholder::before");
|
|
|
|
test_invalid_selector("::before::after");
|
|
test_invalid_selector("::after::after");
|
|
test_invalid_selector("::marker::after");
|
|
test_invalid_selector("::placeholder::after");
|
|
|
|
test_valid_selector("::before::marker");
|
|
test_valid_selector("::after::marker");
|
|
test_invalid_selector("::marker::marker");
|
|
test_invalid_selector("::placeholder::marker");
|
|
|
|
test_invalid_selector("::before::placeholder");
|
|
test_invalid_selector("::after::placeholder");
|
|
test_invalid_selector("::marker::placeholder");
|
|
test_invalid_selector("::placeholder::placeholder");
|
|
</script>
|