diff --git a/Documentation/CSSGeneratedFiles.md b/Documentation/CSSGeneratedFiles.md index 9f2a742b7c..d5b2d321eb 100644 --- a/Documentation/CSSGeneratedFiles.md +++ b/Documentation/CSSGeneratedFiles.md @@ -297,7 +297,7 @@ The following categories are supported: - `#inline-typesetting-properties`: Properties defined in [CSS Text](https://drafts.csswg.org/css-text-4/) - `#margin-properties`: `margin` and its longhands - `#padding-properties`: `padding` and its longhands -- `#text-decoration-properties`: `text-decoration` and its longhands +- `#text-decoration-properties`: Properties defined in [CSS Text Decoration](https://drafts.csswg.org/css-text-decor-4/) ### `implementation` diff --git a/Libraries/LibWeb/CSS/PseudoElements.json b/Libraries/LibWeb/CSS/PseudoElements.json index 4e72081241..08bfc0bacb 100644 --- a/Libraries/LibWeb/CSS/PseudoElements.json +++ b/Libraries/LibWeb/CSS/PseudoElements.json @@ -73,6 +73,7 @@ "#padding-properties", "#border-properties", "box-shadow", + "float", "#custom-properties" ], "implementation": "synthetic" @@ -124,7 +125,6 @@ "color", "background-color", "#text-decoration-properties", - "text-shadow", "FIXME: stroke-color", "FIXME: fill-color", "stroke-width", diff --git a/Meta/Generators/generate_libweb_css_pseudo_element.py b/Meta/Generators/generate_libweb_css_pseudo_element.py index cc7622005b..5baa32b1bd 100644 --- a/Meta/Generators/generate_libweb_css_pseudo_element.py +++ b/Meta/Generators/generate_libweb_css_pseudo_element.py @@ -29,6 +29,7 @@ PROPERTY_GROUPS = { # https://drafts.csswg.org/css-backgrounds/#property-index "background", "background-attachment", + "background-blend-mode", "background-clip", "background-color", "background-image", @@ -96,9 +97,9 @@ PROPERTY_GROUPS = { "font", "font-family", "font-feature-settings", - # FIXME: font-kerning + "font-kerning", "font-language-override", - # FIXME: font-optical-sizing + "font-optical-sizing", # FIXME: font-palette "font-size", # FIXME: font-size-adjust @@ -200,8 +201,12 @@ PROPERTY_GROUPS = { "text-decoration", "text-decoration-color", "text-decoration-line", + "text-decoration-skip-ink", "text-decoration-style", "text-decoration-thickness", + "text-shadow", + "text-underline-offset", + "text-underline-position", ], } diff --git a/Tests/LibWeb/Text/expected/wpt-import/css/css-pseudo/first-letter-allowed-properties.txt b/Tests/LibWeb/Text/expected/wpt-import/css/css-pseudo/first-letter-allowed-properties.txt new file mode 100644 index 0000000000..d29bf0d8d5 --- /dev/null +++ b/Tests/LibWeb/Text/expected/wpt-import/css/css-pseudo/first-letter-allowed-properties.txt @@ -0,0 +1,42 @@ +Harness status: OK + +Found 36 tests + +33 Pass +3 Fail +Pass pre test setup +Pass backgroundAttachment should be applied to first-letter pseudo elements. +Pass backgroundBlendMode should be applied to first-letter pseudo elements. +Pass backgroundClip should be applied to first-letter pseudo elements. +Pass backgroundColor should be applied to first-letter pseudo elements. +Pass backgroundImage should be applied to first-letter pseudo elements. +Pass backgroundOrigin should be applied to first-letter pseudo elements. +Pass backgroundPosition should be applied to first-letter pseudo elements. +Pass backgroundRepeat should be applied to first-letter pseudo elements. +Pass backgroundSize should be applied to first-letter pseudo elements. +Pass border should be applied to first-letter pseudo elements. +Pass borderImage should be applied to first-letter pseudo elements. +Pass borderRadius should be applied to first-letter pseudo elements. +Pass boxShadow should be applied to first-letter pseudo elements. +Pass color should be applied to first-letter pseudo elements. +Pass float should be applied to first-letter pseudo elements. +Pass font should be applied to first-letter pseudo elements. +Pass fontFeatureSettings should be applied to first-letter pseudo elements. +Fail fontSizeAdjust should be applied to first-letter pseudo elements. +Pass fontKerning should be applied to first-letter pseudo elements. +Pass fontVariationSettings should be applied to first-letter pseudo elements. +Pass letterSpacing should be applied to first-letter pseudo elements. +Pass margin should be applied to first-letter pseudo elements. +Pass padding should be applied to first-letter pseudo elements. +Pass opacity should be applied to first-letter pseudo elements. +Pass textDecoration should be applied to first-letter pseudo elements. +Pass textJustify should be applied to first-letter pseudo elements. +Pass textShadow should be applied to first-letter pseudo elements. +Pass textTransform should be applied to first-letter pseudo elements. +Pass textUnderlinePosition should be applied to first-letter pseudo elements. +Pass verticalAlign should be applied to first-letter pseudo elements. +Pass wordSpacing should be applied to first-letter pseudo elements. +Pass position should not be applied to first-letter pseudo elements. +Fail transition should not be applied to first-letter pseudo elements. +Pass transform should not be applied to first-letter pseudo elements. +Fail wordBreak should not be applied to first-letter pseudo elements. \ No newline at end of file diff --git a/Tests/LibWeb/Text/input/wpt-import/css/css-pseudo/first-letter-allowed-properties.html b/Tests/LibWeb/Text/input/wpt-import/css/css-pseudo/first-letter-allowed-properties.html new file mode 100644 index 0000000000..78c214055f --- /dev/null +++ b/Tests/LibWeb/Text/input/wpt-import/css/css-pseudo/first-letter-allowed-properties.html @@ -0,0 +1,83 @@ + +CSS Test: Properties allowed on ::first-letter pseudo elements + + + + + +
text
+