CSS 三大特性: 层叠性、继承性、优先级

层叠性:同一个选择器设置相同的样式,此时就会发生样层叠,即样式覆盖。相同的样式后执行的样式起作用(样式代码行数大的起作用)

        div {
            color: red;
            color: blue;
        }

    <div>
        我显示的字体颜色是蓝色
    </div>

 

 

继承性: 子标签会继承父标签的一部分样式属性(如:text-, font-, line-, color 这些属性子元素都可以继承)

        div {
            font-size: 14px;
            color: aqua;
            /* 改变子元素的行高,即子元素的font*line-height */
            line-height: 1.5; 
        }

        /* 子元素会继承父元素的行高,即:此时 p标签的行高为 20px * 1.5  */
        p {
            font-size: 20px;
        }

    <!-- 子标签 p 会继承父标签div 的font-size和color属性 -->
    <div>
        <p>子元素可以继承父元素的一部分css属性:</p>
        <!-- 子元素会继承父元素的行高和文字大小,即:此时 div标签的行高为 14px * 1.5  -->
        <div>如:text-, font-, line-, color 这些属性子元素都可以继承</div>
    </div>

 

 

优先级:当同一个元素绑定多个选择器就会产生优先级问题,权重大的选择器css效果会被实现。

选择器的权重:继承或者通配 << 元素选择器 << 类选择器,伪类选择器 << id选择器 << 行内样式 style = "" << !important

权重叠加:n+1 个相同权重的不同的选择器权重 >  n个相同权重的不同的选择器权重; 但是一定不会出现 n+1 权重小的选择器> 一个权重大的选择器

    <style>
        /* ul li 的权重大于 继承的权重 所以中间的 li 是粉色不是红色 */
        ul li {
            color: pink;
        }

        /* 类选择器 .li1 权重 大于  ul li 的权重 所以第一个li是蓝色*/
        .li1 {
            color: blue;
        }

        /* id选择器 #li3 的权重 大于 类选择器 .li1 权重 所以最后一个li 是金色*/
        #li3 {
            color: gold;
        }
        
        div {
            color: red;
            font-size: 14px;
        }
    </style>



    <div>
        <p>选择器的权重:继承或者通配 << 元素选择器 << 类选择器,伪类选择器 << id选择器 << 行内样式 style = "" << !important</p>
        <ul>
            <li class="li1">我是蓝色</li>
            <li>我是粉色</li>
            <li class="li1" id="li3">我是金色</li>
        </ul>
    </div>

 

posted on 2020-08-18 17:27  夜之独行者  阅读(177)  评论(0编辑  收藏  举报