| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <title>CSS Content Module Level 3: Valid parsing</title> |
| <link rel="author" title="Tim Nguyen" href="https://github.com/nt1m"> |
| <link rel="help" href="https://drafts.csswg.org/css-content-3/#content-property"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/css/support/parsing-testcommon.js"></script> |
| </head> |
| <body> |
| <div id="target"></div> |
| <script> |
| function test_valid_value_combinations(property, value, serialized) { |
| if (arguments.length < 3) |
| serialized = value; |
| test_valid_value(property, value, serialized); |
| test_valid_value(property, `${value} / "alt text"`, `${serialized} / "alt text"`); |
| test_valid_value(property, `${value} / "alt text" attr(foo) "bar"`, `${serialized} / "alt text" attr(foo) "bar"`); |
| test_valid_value(property, `${value} / attr(foo)`, `${serialized} / attr(foo)`); |
| } |
| |
| test_valid_value("content", "none"); |
| test_valid_value("content", "normal"); |
| |
| test_valid_value_combinations("content", "open-quote"); |
| test_valid_value_combinations("content", "close-quote"); |
| test_valid_value_combinations("content", "no-open-quote"); |
| test_valid_value_combinations("content", "no-close-quote"); |
| |
| test_valid_value_combinations("content", "attr(alt)"); |
| test_valid_value_combinations("content", "attr(data-foo)"); |
| |
| test_valid_value_combinations("content", "counter(counter-name)"); |
| test_valid_value_combinations("content", "counter(counter-name, counter-style)"); |
| test_valid_value_combinations("content", "counter(counter-name, dECiMaL)", "counter(counter-name)"); |
| test_valid_value_combinations("content", "counter(counter-name, DECIMAL)", "counter(counter-name)"); |
| |
| test_valid_value_combinations("content", `counters(counter-name, ".")`); |
| test_valid_value_combinations("content", `counters(counter-name, ".", counter-style)`); |
| test_valid_value_combinations("content", `counters(counter-name, ".", dECiMaL)`, `counters(counter-name, ".")`); |
| test_valid_value_combinations("content", `counters(counter-name, ".", DECIMAL)`, `counters(counter-name, ".")`); |
| |
| test_valid_value_combinations("content", `url("https://www.example.com/picture.svg")`); |
| |
| test_valid_value_combinations("content", `"hello"`); |
| |
| test_valid_value_combinations("content", `"hello" "world"`); |
| test_valid_value_combinations("content", `"hello" attr(alt) "world"`); |
| test_valid_value_combinations("content", `counter(counter-name) "potato"`); |
| test_valid_value_combinations("content", `counters(counter-name, ".") "potato"`); |
| test_valid_value_combinations("content", `"(" counters(counter-name, ".", counter-style) ")"`); |
| test_valid_value_combinations("content", `open-quote "hello" "world" close-quote`); |
| test_valid_value_combinations("content", `url("https://www.example.com/picture.svg") "hello"`); |
| </script> |
| </body> |
| </html> |