diff --git a/Libraries/LibWeb/CSS/StyleResolver.cpp b/Libraries/LibWeb/CSS/StyleResolver.cpp index 32cd0ef49d..4ad6d818af 100644 --- a/Libraries/LibWeb/CSS/StyleResolver.cpp +++ b/Libraries/LibWeb/CSS/StyleResolver.cpp @@ -359,6 +359,15 @@ static void set_property_expanding_shorthands(StyleProperties& style, CSS::Prope return; } + if (property_id == CSS::PropertyID::ListStyle) { + auto parts = split_on_whitespace(value.to_string()); + if (!parts.is_empty()) { + auto value = parse_css_value(parts[0]); + style.set_property(CSS::PropertyID::ListStyleType, value); + } + return; + } + style.set_property(property_id, value); } diff --git a/Libraries/LibWeb/Layout/LayoutListItem.cpp b/Libraries/LibWeb/Layout/LayoutListItem.cpp index 0a1d2b9932..2a46cae1d8 100644 --- a/Libraries/LibWeb/Layout/LayoutListItem.cpp +++ b/Libraries/LibWeb/Layout/LayoutListItem.cpp @@ -47,6 +47,10 @@ void LayoutListItem::layout(LayoutMode layout_mode) LayoutBlock::layout(layout_mode); + if (style().string_or_fallback(CSS::PropertyID::ListStyleType, "disc") == "none") { + return; + } + if (!m_marker) { m_marker = adopt(*new LayoutListItemMarker); if (first_child())