zoukankan      html  css  js  c++  java
  • CSS 选择器优先级

    1. CSS选择器判断过程:

    第一步:判断选择器的权重(多重组合样式同理,多个class<一个id); 权重从大到小依次为:

    • !import
    • 元素行内样式
    • ID选择器
    • 伪类选择器/属性选择器>类选择器
    • tag标签选择器
    • *通配符
    • 继承

    第二步: 同种类型的权重判断选择器的顺序

    • 同种类型的权重不同层数,组合层数多的 > 组合层数少的
    • 同种类型的权重同等层数,后定义的 > 先定义的

    2.实例

    (1). 单个选择器,不同权重

    //HTML
    <div class='styleParent'><a id="style" class="style" href="javascript:;">css样式</a></div>
    
    // CSS
    #style { color: red; }
    .style { color: blue; }
    

    说明:ID选择器 > class选择器; 最终显示为红色;

    (2).多个低权重,一个高权重

    #style { color: red; }
    .styleParent > .style { color: blue; }
    

    说明:ID选择器 > class选择器; 最终显示为红色;

    (3). 相同权重,不同层数

    .styleParent > .style { color: red; }
    .style { color: blue; }
    

    说明:同种权重,层数多的 > 层数少的; 最终显示为红色;

    (4). 相同权重,相同层数

     .style { color: red; }
    .style { color: blue; }
    

    说明:同种权重,相同层数, 后定义的 > 先定义的; 最终显示为蓝色;

    3. CSS 使用注意事项:

    (1). 不要再ID选择器前使用标签名

    解释:ID选择是唯一的,加上标签名相当于画蛇添足了,没必要。

    (2). 不要在类选择器前使用标签名

    解释:如果没有相同类的名字出现就是没必要,但是如果存在多个相同名字的类选择器则有必要添加标签名防止混淆如(p.colclass{color:red;} 和 span.colclass{color:red;}

    (3). 尽量少使用层级关系

    如:#divclass p.colclass{color:red;}改为 .colclass{color:red;}

  • 相关阅读:
    残缺的字符串
    [BZOJ3513: [MUTC2013]idiots]
    FFT感性瞎扯
    Quartz框架简介
    异常状态码总结
    【SSM】拦截器的原理、实现
    FastDFS实现文件上传下载实战
    分布式文件系统FastDFS设计原理(转)
    FastDFS简介
    【设计模式】观察者模式
  • 原文地址:https://www.cnblogs.com/zero-zm/p/9900616.html
Copyright © 2011-2022 走看看