• rune@opera.com's avatar
    Add inline style in the element's scope. · 98ee5fa1
    rune@opera.com authored
    Style attribute declarations were added in a separate scope after all
    other author origins. Instead add style attribute declarations right after
    collecting matching rules from the element's scope. This means that we can
    override values set on the style attribute from outer scopes, like we can
    with values from inner scope's stylesheet.
    
    Without this fix, you would get green on orange below:
    
    <style>html /deep/ span { color: green; background-color: lime }</style>
    <host>
      <host:root>
        <style>span { color:red }</style>
        <span style="background:orange">Green on orange?</span>
      </host:root>
    </host>
    
    With this change, we will get green on lime.
    
    The regression (issue 526634) was not relying on this, but it would be
    more complex code to fix the regression without fixing the style attribute
    cascading order.
    
    R=kochi@chromium.org,hayato@chromium.org
    BUG=526634
    
    Review URL: https://codereview.chromium.org/1322753006
    
    git-svn-id: svn://svn.chromium.org/blink/trunk@201620 bbb929c8-8fbe-4397-9dbb-9b2b20218538
    98ee5fa1
style-and-stylesheet-important.html 357 Bytes