千家信息网

如何理解CSS编写中的属性优先级

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,今天就跟大家聊聊有关如何理解CSS编写中的属性优先级,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。当你将一个样式添加到元素上却发现不起作用时,
千家信息网最后更新 2025年01月19日如何理解CSS编写中的属性优先级

今天就跟大家聊聊有关如何理解CSS编写中的属性优先级,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

当你将一个样式添加到元素上却发现不起作用时,那就是遇到优先级问题了。那么应该如何处理 CSS 优先级问题呢,下面是一些解决 CSS 优先级问题的常用法则。

样式距离
我们可以通过使用外部样式、内部样式、内联样式等方法给元素添加指定的样式,此时的优先级是:

外部样式 < 内部样式 < 内联样式
这个应该比较容易理解,也就是说离元素距离越近的样式优先级越大。如:

CSS Code复制内容到剪贴板

  1.     //外部样式(color:green)   
    my color
    //内联样式

此时显示的优先级是 red > blue > green。所以 my color 显示为红色。

特殊的计算方法
假设有下面这段代码:

CSS Code复制内容到剪贴板

  1.    

    my color

我们面对下面的 css,如何判断优先级呢?

CSS Code复制内容到剪贴板

这里介绍一种特殊的计算方法:

元素, 伪元素: 1 – (0,0,0,1)
类, 伪类, 属性: 1 – (0,0,1,0)
ID: 1 – (0,1,0,0)
内联样式: 1 – (1,0,0,0)
这里的属性指的是:

效果如下:

优先级从上往下依次增加,至于如何计算,同样举例说明:

p: 1个元素– (0,0,0,1)
div: 1个元素 – (0,0,0,1)
#idSelector: 1个ID – (0,1,0,0)
div#idSelector: 1个元素, 1个ID – (0,1,0,1)
div#idSelector p: 2个元素, 1个ID– (0,1,0,2)
div#idSelector p.classSelector: 2个元素, 1个类, 1个ID – (0,1,1,2)
所以现在我们再来看上面的例子:

CSS Code复制内容到剪贴板

div p.classSelector {color: blue} - (0,0,0,1) + (0,0,0,1) + (0,0,1,0) = (0,0,1,2)   #idselector p {color: red} - (0,1,0,0) + (0,0,0,1) = (0,1,0,1)

由于优先级上 (0,1,0,1) > (0,0,1,2),所以我们知道最后显示的颜色为红色。

继承
继承是个比较好理解的概念,即子元素会继承父元素的样式。例如:

CSS Code复制内容到剪贴板

  1. my color

上例中的 span 会继承父元素 div 的样式。但不是所有的属性都会默认使用继承的方式,比如 margin 和 padding 属性。例如:

CSS Code复制内容到剪贴板

  1. my color

此时,元素 p 并不会继承父元素 div 的 margin 和 padding 样式,除非你这么做:

CSS Code复制内容到剪贴板

  1. my color

总结
1.首先找到所有作用在元素上的样式。(不要忽略来自继承的样式)
2.计算样式的作用距离,距离越近,优先级越大。
3.使用特殊的计算方法来判断同距离内的样式。
4.如果计算后的结果相同,那么后声明的样式覆盖先前声明的样式。

看完上述内容,你们对如何理解CSS编写中的属性优先级有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

样式 元素 优先级 内容 剪贴板 剪贴 属性 方法 特殊 作用 问题 红色 面的 相同 也就是 也就是说 代码 例子 可以通过 就是 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 启动服务器管理器只有一种方法 做网络安全销售好做吗 了解网络安全100字 网络安全设备名称大全 金山区智能化软件开发创新服务 对数据库技术发展的观点 英特尔至强管理服务器 beta版服务器ip怎么填 嘉定区银联数据库服务电话 湖北皓亿星澜网络技术有限公司 工业网络技术好找工作吗 德勤网络技术 pubg国际服无法定位服务器 华为服务器报错120哪里的问题 软件开发人天和人年怎么换算 数据库的fk 网络安全威胁人数 河南移动服务器租赁云服务器 数据库设置安全库存 网络安全即兴评 大家都怎么看待网络安全 浙江在线网络技术服务哪家好 粤教版网络技术应用ppt 10台电脑怎么做无盘系统服务器 酒店网络安全管理中心和领导小组 学校加强网络安全教育 天龙八部武器数据库 数据库中表的结构用记录来表示 墙报模板软件开发 《网络安全法》进校园活动
0