CSS中的三大特性_继承性、层叠性、优先级

一、css继承性

 

子元素可以直接使用父元素中的一些样式(特征),这个我们就称之为继承性。继承性一般用于设置网页上的公共信息,例如网页文字颜色、字体以及大小等。

注意点:

  • 并不是所有的属性都可以继承, 只有以color/font-/text-/line-开头的属性才可以继承
  • 在css的继承中不仅仅是儿子可以继承, 只要是后代都可以继承
  • 继承性中的特殊性:1、a标签的文字颜色和下划线是不能继承的,2、h标签的文字大小是不能继承的

例子:

<style type="text/css">
   #div1{
        font-size: 16px;
        color: #ff0;
        border: #ddd solid 1px;
    }
</style>
<div id="div1">
          这是div1的内容
    <div id="div2">
        div1的后代div2中的内容
    </div>
</div>

  

结果为:div2同样继承了div1的font-size和color样式 ,但是border没有继承。那么有哪些属性不能继承,哪些能继承呢?

不可继承的:display、margin、border、padding、background、height、min-height、max-height、width、 min-width、max-width、overflow、position、left、right、top、bottom、z-index、float、clear、table-layout、 vertical-align、page-break-after、page-bread-before和unicode-bidi。 
内联元素可继承:letter-spacing、word-spacing、white-space、line-height、color、font、font-family、font-size、font-style、font-variant、font-weight、text-decoration、text-transform、direction。 
终端块状元素可继承:text-indent和text-align。 
列表元素可继承:list-style、list-style-type、list-style-position、list-style-image。

 

二、css层叠性

层叠性只有在多个选择器选中"同一个标签", 然后又设置了"相同的属性", 才会发生层叠性。层叠性就是css处理冲突的一种能力,层叠性是有优先级来决定最终的显示样式。

例子: 

<style type="text/css">
div{
    background-color:#ff0;
}
.test{
    width: 100px;
    height: 100px;
    border: 1px solid #666;
}
</style>
<div class="test"></div>

  

结果为:  虽然设置了两个不同的选择器,但是两个选择器内设置的样式同样都被运用上。

资源网站大全 https://55wd.com 我的007办公资源网站 https://www.wode007.com

三、css优先级

在现实生活中当多条相互冲突的规则施加到同一事物时,也必须制定一个原则,也就是优先级。 css优先级的判断方式:

1.  间接选中就是继承时,谁离目标标签近就听谁的。
2.  间接选中,谁离目标标签近就听谁的
3.  都是直接选中时,并且是同类型的选择器时,谁写在后面就听谁的。当是不同类型的选择器时,按照优先级: id>类>标签>通配符>继承>浏览器默认

 

关于通配符:

比如css开头写一句 *{margin:0;padding:0;}  用 * 来匹配全部标签 。

 

什么是优先级的权重?

作用: 当多个选择器混合在一起使用时, 我们可以通过计算权重来判断谁的优先级最高。

 

权重的计算规则

首先先计算选择器中有多少个id, id多的选择器优先级最高
如果id的个数一样, 那么再看类名的个数, 类名个数多的优先级最高
如果类名的个数一样, 那么再看标签名称的个数, 标签名称个数多的优先级最高
如果id个数一样, 类名个数也一样, 标签名称个数也一样, 那么就不会继续往下计算了, 那么此时谁写在后面听谁的

关于!important用于提高某个直接选中标签的优先级,要写属性值分号的前面。

 

CSS中的三大特性_继承性、层叠性、优先级

上一篇:PHP Filter 函数 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤。


下一篇:PHP配置文件中与错误相关选项