mirror of
https://github.com/RGBCube/serenity
synced 2025-05-16 19:05:08 +00:00
LibWeb: Support more presentational hints from the HTML spec
Specifically, this adds support for the align attribute when applied to heading, paragraph and caption elements.
This commit is contained in:
parent
25af1b33f6
commit
51f41ea997
6 changed files with 55 additions and 0 deletions
|
@ -16,4 +16,23 @@ HTMLHeadingElement::HTMLHeadingElement(DOM::Document& document, DOM::QualifiedNa
|
|||
}
|
||||
|
||||
HTMLHeadingElement::~HTMLHeadingElement() = default;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/rendering.html#tables-2
|
||||
void HTMLHeadingElement::apply_presentational_hints(CSS::StyleProperties& style) const
|
||||
{
|
||||
HTMLElement::apply_presentational_hints(style);
|
||||
for_each_attribute([&](auto& name, auto& value) {
|
||||
if (name.equals_ignoring_case("align"sv)) {
|
||||
if (value == "left"sv)
|
||||
style.set_property(CSS::PropertyID::TextAlign, CSS::IdentifierStyleValue::create(CSS::ValueID::Left));
|
||||
else if (value == "right"sv)
|
||||
style.set_property(CSS::PropertyID::TextAlign, CSS::IdentifierStyleValue::create(CSS::ValueID::Right));
|
||||
else if (value == "center"sv)
|
||||
style.set_property(CSS::PropertyID::TextAlign, CSS::IdentifierStyleValue::create(CSS::ValueID::Center));
|
||||
else if (value == "justify"sv)
|
||||
style.set_property(CSS::PropertyID::TextAlign, CSS::IdentifierStyleValue::create(CSS::ValueID::Justify));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue