问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

css的三种样式中哪种样式的优先级最高

发布网友 发布时间:2022-04-28 13:02

我来回答

6个回答

懂视网 时间:2022-04-28 17:24

本篇文章给大家介绍的是css样式优先级,带大家深入理解一下css样式优先级的顺序。

您是否遇到过尝试将css样式应用于元素的情况,但是却没有效果?页面似乎忽略了你定义的CSS,但你可能无法弄清楚原因。也许你会让!important或添加内联样式作为最后的实现手段。但实际上你遇到的问题很可能是css优先级之一。(推荐课程:css视频教程)

更好地理解哪些css样式优先使用可以更清晰更有组织的来写css代码,所以让我们看看控制给定html元素的三个css规则:

css优先级计算

css继承

css层叠

学习这些规则将使您的CSS开发更上一层楼。

优先级计算

想象一下,你的html包含一个应用了一类“生物”的段落。您还有以下两个css规则:

p { font-size :12px }
p.bio { font-size :14px }

你希望段落中的文字大小是12px还是14px?在这种情况下你可以猜测它将是14px。css(p.bio)的第二行比你的class =“bio”段更具体。然而,有时优先级并不容易看到。

例如,考虑以下html和css

<div id = “sidebar” >
<p class = “bio” >文字在这里</ p>
</ div>
div p.bio { font-size :14px }
#sidebar p { font-size :12px }

乍一看,第一行css可能看起来更具体,但实际上上面的第二行更符合段落的字体大小。这是为什么?

要回答这个问题,我们需要考虑优先级规则。

通过计算css的各种成分并以(a,b,c,d)形式表达它们来计算特异性。这将通过一个例子更清楚,但首先是组件。

元素,伪元素:d = 1 - (0,0,0,1)

类,伪类,属性:c = 1 - (0,0,1,0)

Id:b = 1 - (0,1,0,0)

内联样式:a = 1 - (1,0,0,0)

id比类更具体而不是元素。

您可以通过计算上述每一项并将a,b,c或d加1来计算优先级。同样重要的是要注意0,0,1,0比0,0,0,15更具体。让我们看一些例子来使计算更清晰。

p:1个元素 - (0,0,0,1)

div:1个元素 - (0,0,0,1)

#sidebar:1个id - (0,1,0,0)

div#sidebar:1个元素,1个id - (0,1,0,1)

div#sidebar p:2个元素,1个id - (0,1,0,2)

div#sidebar p.bio:2个元素,1个类,1个id - (0,1,1,2)

让我们再看一下上面的例子

div p.bio { font-size :14px } - (0,0,1,2)
#sidebar p { font-size :12px } - (0,1,0,1)

第二个具有更高的优先级,因此优先。

在我们前进之前的最后一点。重要性胜过优先级,当你使用!important标记css属性时,你会覆盖优先级规则等等

div p.bio { font-size :14px !important } 
#sidebar p { font-size :12px }

表示上面的第一行css优先于第二行而不是第二行。!important仍然是围绕基本规则的特殊性,如果您了解规则的运作方式,您应该永远不需要。

继承

继承背后的想法相对容易理解。元素从其父容器继承样式。如果将body标签设置为使用color:red,那么除非另有说明,否则正文中所有元素的文本也将为红色。

但是,并非所有css属性都是继承的。例如,边距和填充是非继承属性。如果在div上设置边距或填充,则div内的段落不会继承您在div上设置的边距和填充。该段落将使用默认的浏览器边距和填充,直到您另外声明。

但是,您可以显式设置属性以从其父容器继承样式。例如,您可以声明

p { margin :inherit ; 填充:继承 }

然后你的段落将从它的包含元素继承。

层叠

在最高级别,层叠是控制所有css优先级的,并且如下工作。

1、查找适用于相关元素和属性的所有css声明。

2、按原点和重量排序。Origin指的是声明的来源(作者样式,用户样式,浏览器默认值),权重指的是声明的重要性。(作者的权重大于用户的权重大于默认值。!important比正常声明更重要)

3、计算优先级

4、如果上述所有规则中的两个规则相同,那么最后一个规则获胜。嵌入在html中的CSS总是在外部样式表之后,而不管html中的顺序如何。

上面的#3很可能是你最需要注意的。使用#2只需了解您的样式将覆盖用户设置浏览器的方式,除非他们将规则设置为重要。

还要意识到您的样式将覆盖浏览器默认值,但这些默认值确实存在,并且通常会导致跨浏览器问题。使用重置文件,如Eric Meyer的CSS重置或Yahoo的YUI重置CSS有助于将默认样式排除在等式之外。

总结

希望以上内容有助于理清您的一些CSS优先级问题。大多数情况下,如果你的风格存在冲突,问题将归结为优先级。有时你还没有声明一些css,但是一个元素的行为方式你并不期望它可能从父容器或浏览器的默认样式继承了某些css。

声明css时的一般经验法则是声明具有最小优先级的属性来设置元素的样式。例如,使用#sidebar而不是div#sidebar。我承认打破这个一般规则远远超过我应该,但通过使用所需的最小优先级,它将使您更容易通过声明更具体的样式来覆盖样式。

如果您使用最具优先级,您可能会在以后遇到问题并发现自己必须添加不必要的HTML以便能够添加更多优先级,或者您可能会发现自己不再使用!important或声明内联样式。从最小的优先级开始,仅在需要时添加更多。

热心网友 时间:2022-04-28 14:32

css样式采取的就近样式原则。

行内样式<div style=""></div>优先级最高,没有行内样式那么会回在页答面找<style></style>内嵌样式。

名称CSS中的“层叠(cascading)”表示样式单规则应用于HTML文档元素的方式。具体地说,CSS样式单中的样式形成一个层次结构,更具体的样式覆盖通用样式。样式规则的优先级由CSS根据这个层次结构决定,从而实现级联效果。 

扩展资料:

易于使用和修改:

CSS可以将样式定义在HTML元素的style属性中,也可以将其定义在HTML文档的header部分,也可以将样式声明在一个专门的CSS文件中,以供HTML页面引用。总之,CSS样式表可以将所有的样式声明统一存放,进行统一管理。

另外,可以将相同样式的元素进行归类,使用同一个样式进行定义,也可以将某个样式应用到所有同名的HTML标签中。

参考资料来源:百度百科-CSS



热心网友 时间:2022-04-28 15:50

css样式采取的就近样式原则。

行内样式<div style=""></div>优先级最高

没有行内样式那么会在页面找<style></style>内嵌样式

外联样式<link>链接,在前面2者没有的情况生效,读取的顺序是从上往下,后者样式覆盖前者。样式的权重#id>.class

热心网友 时间:2022-04-28 17:24

style=""优先级最高
.class{}其次
#id{}最低

热心网友 时间:2022-04-28 19:32

首先是写在html标签上的是最优先级别(<div style="width:250px;"></div>),其次是页面中写到"<style> .xxx{width:250px;} </style>"标签里的样式,最后就是引用的 css文件了。

热心网友 时间:2022-04-28 21:57

引入css样式有三种方法:外联、内嵌和行内。
优先级最高的是行内
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 粘马桶底部的白胶黏衣服上了怎么去除? 想考催乳师 请问广州哪里可以考 广州市花都区学催乳师可不可以申请劳动技能补贴啊? 广州有正规的催乳师的培训机构吗 广州哪里有专业的催乳师? 广州萝岗催乳师培训班哪家好 广州天河哪里有正规的催乳师培训中心 广州市白云区石井镇有催乳师吗? 麻薯面包的做法 奶香麻薯面包的做法,奶香麻薯面包怎么做好吃 麻薯面包的做法,麻薯面包怎么做好吃,麻薯面包的家常 韩式麻薯小面包的做法步骤图,怎么做好吃 酥脆的麻薯面包的做法,酥脆的麻薯面包怎么做 麻薯面包最正宗的做法 聊天记录迁徙正在迁徙非当前账号什么意思 微信聊天记录备份一直处在“正在等待微信准备数据”是怎么回事? 微信聊天记录备份,一直显示“正在等待微信准备数据”? 苏州科技学院鲍谧清教授电话 在飞机起飞前,起飞时间不变,航空公司不变,航班号变了,还能正常乘坐吗? 航空公司改变了航班号,但是时间和机场都没变。想问下什么情况下航空公司会改变航班号呢? 性功能六项检查是哪6项? 如何检查性功能障碍? ps如何把照片放到绿幕里? 绿幕五官怎么换照片 手机怎么在绿幕上视频加照片 四五个月没有登录了QQ绑定的手机号码没用了,密码也忘记了 现在QQ登不上怎么办? css样式的优先级顺序 优酷投屏怎么没弹幕??? 微信里字体都大就是账单里明细刚打开就突然变小了是怎么回事? 要怎么设置才能够让微信里账单自己变小 微信帐单字体出来时大,一下子又小了,什么原? 打开微信后进入账单字体就变小了调节字体大小也不管用怎么回事? vivo手机设置通用字体大小,微信字体大小都可以调,唯独账单里的字体没有变化,请问怎么办?急 我安装了别的字体,微信账单字体乱了,怎么办? 微信账单导出是繁体字,手机设置里也没有开启繁体字模式该怎么弄? 微信所有的链接打开字都是大怎么更改,聊天字体正常。谢谢 梦见把皇帝的帽子拿了是怎么回事? 梦见哥穿皇上衣服。皇上帽子? 我今天白天做梦,梦见自己带着皇上的*帽子,还在路上看见有一群人骑着猪奔驰而过,帮忙解一下梦? wps自定义公式如何转换为文本格式