CSS【05】:CSS三大特性

继承性

  • 作用:给父元素设置一些属性,子元素也可以使用,这个我们就称之为继承性
  • 示例代码:
 <style>
     div {
     color: red;
     }
</style>
<div>
    <ul>
        <li>
            <p>我是段落</p>
        </li>
    </ul>
</div>

<!--p会变成红色-->
  • 注意点:

    • 并不是所有的属性都可以继承,只有以colorfont-text-line-开头的属性才可以继承
    • 在CSS的继承中不仅仅是儿子可以继承,只要是后代都可以继承
  • 继承性中的特殊性
    • a标签的文字颜色和下划线是不能继承的
    • h标签的文字大小是不能继承的
<style>
    div {
        color: red;
        text-decoration: none;
        font-size: 30px;
    }
</style>
<div>
    <a href="#">我是超链接</a>
</div>

<div>
    <h1>我是大标题</h1>
</div>

<!--a的颜色和下划线不会发生变化, H的字体大小不对  -->
  • 应用场景:

    • 一般用于设置网页上的一些共性信息,例如网页的文字颜色、字体、文字大小等内容
body {
    font-size: 30px;
    font-family: "微软雅黑"
    color: #666;
}

层叠性

  • CSS全称 Cascading StyleSheet(层叠式样式表),其中的层叠就是指层叠性
  • 作用:层叠性就是CSS处理冲突的一种能力
  • 示例代码
<style>
    p {
        color: red;
    }
    .para {
        color: blue;
    }
</style>
<p id="identity" class="para">我是段落</p>

<!-- 最终显示蓝色, 因为红色被覆盖掉了 -->
  • 注意点:

    • 层叠性只有在多个选择器选中“同一个标签”,然后又设置了“相同的属性”,才会发生层叠性

优先级

  • 作用:当多个选择器选中同一个标签,并且给同一个标签设置相同的属性时,如何层叠就由优先级来确定
  • 优先级判断的三种方式
    • 间接选中就是指继承
    • 如果是间接选中, 那么就是谁离目标标签比较近就听谁的
    <style>
        li {
            color: blue;
      }
        ul {
            color: red;
        }
    </style>
    <ul>
        <li>
            <p id="identity" class="para">我是段落</p>
        </li>
    </ul>
    <!-- 最终显示蓝色 -->
    • 相同选择器(直接选中)
    • 如果都是直接选中, 并且都是同类型的选择器, 那么就是谁写在后面就听谁的
    <style>
        p {
          color: blue;
        }
        p {
          color: red;
        }
    </style>
    <ul>
        <li>
            <p id="identity" class="para">我是段落</p>
        </li>
    </ul>
    <!-- 最终显示红色 -->
    • 不同选择器(直接选中)
    • 如果都是直接选中,并且不是相同类型的选择器,那么就会按照选择器的优先级来层叠
    • id > 类 > 标签 > 通配符 > 继承 > 浏览器默认
<style>
    #identity {
        color: purple;
    }
    .para {
        color: pink;
    }
    p {
        color: green;
    }
    * {
        color: blue;
    }
    li {
        color: red;
    }
</style>
<ul>
    <li>
        <p id="identity" class="para">我是段落</p>
    </li>
</ul>
<!-- 最终显示紫色 -->
  • 注意点:

    • 通配符选择器也是直接选中

优先级权重

  • 作用:当多个选择器混合在一起使用时, 我们可以通过计算权重来判断谁的优先级最高
  • 权重的计算规则
    • 首先先计算选择器中有多少个id,id多的选择器优先级最高
    • 如果id的个数一样,那么再看类名的个数,类名个数多的优先级最高
    • 如果类名的个数一样,那么再看标签名称的个数,标签名称个数多的优先级最高
    • 如果id个数一样,类名个数也一样,标签名称个数也一样,那么就不会继续往下计算了,那么此时谁写在后面听谁的
  • 示例代码
<style>
    #identity1 .box2 {
        color: red;
    }
    .box1 .box2 {
        color: green;
    }
    div ul li p {
        color: blue;
    }
</style>
<div id="identity1" class="box1">
    <ul>
        <li>
            <p id="identity2" class="box2">我是段落</p>
        </li>
    </ul>
</div>
<!-- id多最终显示红色 -->
<style>
    .box1 .box2 {
        color: blue;
    }
    div .box2 {
        color: green;
    }
</style>
<div id="identity1" class="box1">
    <ul>
        <li>
            <p id="identity2" class="box2">我是段落</p>
        </li>
    </ul>
</div>
<!-- id一样, 比类多, 最终显示蓝色 -->
<style>
    #identity1 ul li p {
        color: red;
    }
    #identity1 ul p {
        color: green;
    }
</style>
<div id="identity1" class="box1">
    <ul>
        <li>
            <p id="identity2" class="box2">我是段落</p>
        </li>
    </ul>
</div>
<!-- id一样, 类一样, 比标签多最终显示红色 -->
<style>
    .box1 li #identity2{
        color: blue;
    }

    #identity1 ul .box2{
        color: red;
    }
</style>
<div id="identity1" class="box1">
    <ul>
        <li>
            <p id="identity2" class="box2">我是段落</p>
        </li>
    </ul>
</div>
<!-- id一样, 类一样, 标签一样, 最终显示红色 -->
  • 注意点:

    • 只有选择器是直接选中标签的才需要计算权重, 否则一定会听直接选中的选择器的

!important

  • 作用:用于提升某个直接选中标签的选择器中的某个属性的优先级的,可以将被指定的属性的优先级提升为最高
  • 示例代码
<style>
    #identity {
        color: purple;
        font-size: 50px;
    }
    .para {
        color: pink ;
    }
    p {
        color: green !important;
    }
</style>
<ul>
    <li>
        <p id="identity" class="para">我是段落</p>
    </li>
</ul>
<!-- 最终显示绿色 -->
  • 注意点:

    • !important只能用于直接选中,不能用于间接选中
    • 通配符选择器选中的标签也是直接选中的
    • !important只能提升被指定的属性的优先级,其它的属性的优先级不会被提升
    • !important必须写在属性值得分号前面
    • !important前面的感叹号不能省略

原文地址:https://www.cnblogs.com/qiuxirufeng/p/10181535.html

时间: 2024-10-12 22:37:38

CSS【05】:CSS三大特性的相关文章

css学习_css三大特性

css三大特性 1.层叠性(就近原则) 2.继承性(和文字有关的会继承) 3.优先级   (权重问题) 权重:0,0,0,0 0001 ---标签选择器(注意:即使有20个标签选择器也不会比一个伪类选择器优先级高) 0010  ---类选择器,伪类选择器,属性选择器,伪元素选择器 0100  ---id选择器 1000 ---行内样式 最大的权重: !important eg: color!important;(一旦出现优先级最大) 权重是可以叠加的   对于复合选择器 eg:ul  li   

CSS三大特性(继承、优先级、层叠)之个人见解

首先声明一下CSS三大特性——继承.优先级和层叠.继承即子类元素继承父类的样式,比如font-size,font-weight等f开头的css样式以及text-align,text-indent等t开头的样式以及我们常用的color.简单的就不演示了,强调一下font-size这个东东(虽然也有继承,但是标签不同继承的效果也不一样),比如下面的代码: <!DOCTYPE html> <html lang="en"> <head> <meta c

[转载]CSS三大特性(继承、优先级、层叠)之个人见解

首先声明一下CSS三大特性——继承.优 先级和层叠.继承即子类元素继承父类的样式,比如font-size,font-weight等f开头的css样式以及text-align,text- indent等t开头的样式以及我们常用的color.简单的就不演示了,强调一下font-size这个东东(虽然也有继承,但是标签不同继承的效果也 不一样),比如下面的代码: <!DOCTYPE html> <html lang="en"> <head> <met

CSS(三)CSS三大特性

CSS三大特性 一)层叠性 一般情况下,如果出现样式冲突,则会安装CSS的书写顺序,以最后的样式为准.就近原则. 二)继承性 子标签会继承父标签的某些样式.text.font.line以及color的样式都可以继承. 三)优先级 *|继承(0000) < 标签(0001) < class(0010) < id(0100) < 行内样式(1000) < !important(无限大) 越特殊越优先 0,0,1,0 > 0,0,0,12 原文地址:https://www.c

CSS(4)---三大特性(继承性,层叠性,优先级)

CSS(4)---三大特性(继承性,层叠性,优先级) CSS有三大特性分别是: 继承性,层叠性,优先级. 一.继承性 概念 给父元素设置一些属性,子元素也可以使用,这个我们就称之为继承性. 注意 1.并不是所有的属性都可以继承, 只有以color/font-/text-/line-开头的属性才可以继承 2.在CSS的继承中不仅仅是儿子可以继承, 只要是后代都可以继承 3.继承性中的特殊性 3.1 a标签的文字颜色和下划线是不能继承的 3.2 h标签的文字大小是不能继承的 示例 <!-- 样式部分

【转】CSS深入理解流体特性和BFC特性下多栏自适应布局

这篇文章发布于 2015年02月12日,星期四,23:36,归类于 css相关. 阅读 30873 次, 今日 63 次 by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=4588 一.开篇之言 要说web上实现两栏自适应布局的方法,一双手都数不过来.不知大家有没有细想过,为什么这些方法可以实现自适应布局呢? 本文就将深入探讨下流体特性和BFC特性下的两栏自适应布局,还是

了解HTML CSS选择器操作和特性

子选择器 在CSS样式表中, 有时候我们需要为一个选择器进行再次的选择, 比如要为某段落标签下的<span>标签进行样式设定(<span>标签必须为段落标签下的第一代子元素, 意思即中间不包含别的标签嵌套), 这个时候就要使用子选择器. 代码示例: p>span{ font-size:20px; } " > "就称之为子选择器, 它的作用就是将标签选择器下的第一代子元素的<span>标签中的文本样式设置为字号20px, 但是这种显然不是很

面向对象的三大特性之继承-基础知识总结------彭记(05)

面向对象的三大特性之继承: js中的某些对象没有一些需要的属性和方法,但是另外的对象有,那么拿过使用,就是继承. js中继承的实现方式: 1.混入式继承:通过循环将一个对象中的所有属性和方法混入到另外一个对象中: var me={ work:function(){ console.log('敲代码'): } }: var mayun={ money:9999999, car:'000', manager:function(){ console.log('管理巴巴...'); } } /*遍历,让

H5 24-CSS三大特性之继承性

24-CSS三大特性之继承性 div { color: red; text-decoration: none; font-size: 30px } 我是段落 我是段落 我是超链接 我是大标题 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>24-CSS三大特性之继承性</title> <style&

黑马程序员 ——ios点语法和类的三大特性

@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); 一.点语法 (一)认识点语法