Order by CSS Specificity

后端 未结 1 1722
独厮守ぢ
独厮守ぢ 2021-02-09 03:15

My main goal is to try to reorder a CSS style block based on specificity. I previously had helped from SO and I managed to produce this function. See gist.

Here is an e

1条回答
  •  予麋鹿
    予麋鹿 (楼主)
    2021-02-09 03:50

    The problem should go away if you serialize

    html, body, body div{ 
        background: transparent; 
    } 
    

    as separate rules, as if they were written in the following manner:

    html{ 
        background: transparent; 
    } 
    body{ 
        background: transparent; 
    } 
    body div{ 
        background: transparent; 
    } 
    

    The semantics is a bit confusing, but basically you are judging an entire declaration based on independent selectors that have been combined into the same rule set.

    Re your update: specificity is not affected by selector order, i.e. the rules below have the same specificity. The last rule will take precedense rendering in blue, unless you re-arrange the rules rendering in red:

    
    
    
    Hello world!

    0 讨论(0)
提交回复
热议问题