diff options
Diffstat (limited to 'Source/WebCore/html/HTMLLIElement.cpp')
-rw-r--r-- | Source/WebCore/html/HTMLLIElement.cpp | 39 |
1 files changed, 25 insertions, 14 deletions
diff --git a/Source/WebCore/html/HTMLLIElement.cpp b/Source/WebCore/html/HTMLLIElement.cpp index f789d32fe..ec7824ea4 100644 --- a/Source/WebCore/html/HTMLLIElement.cpp +++ b/Source/WebCore/html/HTMLLIElement.cpp @@ -49,26 +49,37 @@ PassRefPtr<HTMLLIElement> HTMLLIElement::create(const QualifiedName& tagName, Do return adoptRef(new HTMLLIElement(tagName, document)); } -void HTMLLIElement::parseAttribute(Attribute* attr) +bool HTMLLIElement::isPresentationAttribute(Attribute* attr) const { - if (attr->name() == valueAttr) { - if (renderer() && renderer()->isListItem()) - parseValue(attr->value()); - } else if (attr->name() == typeAttr) { - if (attr->value().isNull()) - removeCSSProperty(CSSPropertyListStyleType); - else if (attr->value() == "a") - addCSSProperty(CSSPropertyListStyleType, CSSValueLowerAlpha); + if (attr->name() == typeAttr) + return true; + return HTMLElement::isPresentationAttribute(attr); +} + +void HTMLLIElement::collectStyleForAttribute(Attribute* attr, StylePropertySet* style) +{ + if (attr->name() == typeAttr) { + if (attr->value() == "a") + addPropertyToAttributeStyle(style, CSSPropertyListStyleType, CSSValueLowerAlpha); else if (attr->value() == "A") - addCSSProperty(CSSPropertyListStyleType, CSSValueUpperAlpha); + addPropertyToAttributeStyle(style, CSSPropertyListStyleType, CSSValueUpperAlpha); else if (attr->value() == "i") - addCSSProperty(CSSPropertyListStyleType, CSSValueLowerRoman); + addPropertyToAttributeStyle(style, CSSPropertyListStyleType, CSSValueLowerRoman); else if (attr->value() == "I") - addCSSProperty(CSSPropertyListStyleType, CSSValueUpperRoman); + addPropertyToAttributeStyle(style, CSSPropertyListStyleType, CSSValueUpperRoman); else if (attr->value() == "1") - addCSSProperty(CSSPropertyListStyleType, CSSValueDecimal); + addPropertyToAttributeStyle(style, CSSPropertyListStyleType, CSSValueDecimal); else - addCSSProperty(CSSPropertyListStyleType, attr->value()); + addPropertyToAttributeStyle(style, CSSPropertyListStyleType, attr->value()); + } else + HTMLElement::collectStyleForAttribute(attr, style); +} + +void HTMLLIElement::parseAttribute(Attribute* attr) +{ + if (attr->name() == valueAttr) { + if (renderer() && renderer()->isListItem()) + parseValue(attr->value()); } else HTMLElement::parseAttribute(attr); } |