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

...的标签,浏览器到底会选择哪个样式)_html/css_WEB-ITnose

发布网友 发布时间:2024-07-03 03:10

我来回答

1个回答

热心网友 时间:2024-08-31 01:57


举个例子,标签P,也许会在嵌入样式表、外部样式表中多次被设置相关属性的值(比如color: red;/color : blue),那么浏览器到底是以哪个值来显示P的样式呢???这就是CSS的工作原理。(其中特指度比较重要)
CSS有3种工作机制:1.继承 2.层叠 3.特指 (其中层叠原则是基于继承和特指的)
1.继承 :css中的祖先元素会向后代传递一样东西:CSS属性的值。body是所有元素的祖先,如果我们指定body{color:red;},那么文档中的所有元素都继承这一样式。这就是为什么,我们在记事本程序写了一行字以后,重命名为:xxx.html,在用不同浏览器打开时,会有不同的字体效果,因为每个浏览器都有自己的预定义样式表,其中包括body中的字体属性,而我们用浏览器打开我们的Html时,我们继承了这个属性。
当然,不是所有的属性都能被继承,能被继承的属性大多数和文本有关,比如颜色、字体、字号等。而有些属性,被继承下来没有意义,或者被继承下来会影响页面的布局,比如涉及元素定位,margin,padding,border等属性。
2.层叠 :也就是CSS中的C(cascading),主要是按照样式来源和特指度来层叠。
a)样式来源 :以下是浏览器层叠各个来源样式的顺序:
浏览器默认样式表 用户样式表(比如有视力障碍的用户,加了一个body{font-size:200%}) 开发者外部样式表(按照引入到页面中的先后顺序) 开发者嵌入样式表 开发者行内样式表 注意:3 4的顺序是看嵌入样式标签的位置,和标签的位置,标签在后的被选中,请看例子2越往下的优先级越高,也就是说浏览器会优先选择后面来源设置的样式(如果存在的话)
b)特指度 :是针对选择器的计分规则,分高的选择器会被选中。公式有3个需要计算的值 :I-C-E ,规则如下
选择器中有一个ID选择器,就在I上加1 选择器中有一个类选择器,就在C上加1 选择器中有一个标签名,就在E上加1 得到一个3位数 先比较高位,高位高既为高,比如1-0-0 是比 0-12-0 高的,优先选择。以此类推,如果特制度相同,后申明的样式被选中。选择器,也有叫选择符的,英文应该是selector,CSS有很多种选择器,此处不详谈。
举个特指度的例子:
p 0-0-1特指度=1p.classp1 0-1-1特指度是11p#idp1 1-0-1特指度是101body p#idp1 1-0-2特指度是102body p#idp1 ul.classul1 1-1-3特指度是113body p#idp1 ul.classul1 li 1-1-4特指度是114 基于3种工作机制,总结3条规则,适用所有情况。
1)ID选择器大于类选择器,类选择器大于标签选择器。一句话:特指度高的选择器(选择的更明确)被选中。
2)浏览器按照html文档顺序读取各个样式表,后面的样式表会覆盖掉前面样式表的相同属性的样式。如果后面的样式特指度低,则无法覆盖前面的样式
注意:规则1 强于 规则2 ,如果特指度高,无论在哪里(除去行内),都会被选中。行内的优先级最高(但是行内的style一般不用,),其次是特指度。
3)设定的样式优于继承的样式
例子1 :id选择器优于类选择器 .li1{color: red;} #li1{color:yelow;} 列表项1 列表1为黄色
例子2 :嵌入样式表和外部样式表,选哪个(主要看浏览器按顺序,后读取的会覆盖点前面读取的),相同特指度的时候 .li1{color: red;} 列表项1(黄色)外部样式表demo.css .li1{ color:yellow;}
嵌入样式表在后,为红色。
如果是这个顺序,style标签在前,link在后.li1{color: red;}
为黄色

例子3:选择特指度高的(如按顺序,应该选择link的黄色,但是style中的特指度高 1-0-2 大于 1-0-1,所以选特指度高的红色),后面读取的特指度低的就不会覆盖前面特指度高的。 body div #li1{color: red;} 列表项1 demo.css
div #li1{ color:yellow;}
为红色
例子4:行内style有最高优先级,前面的代码不变,只在p中加了style blue,列表项立马变成蓝色虽然行内的有最高优先级,但是行内style本身就不常用(不方便移植,增加网页大小)列表项1
例子5 :设定的样式优于继承的样式,即使继承的样式特指度高(在li中加入em,em继承了li的特指度是102,em本身的特指度是001,但是仍然选em) body div #li1{color: red;} em{ color:black;} 列表项1 列表项为黑色。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 名师1+1导读方案:汤姆·索亚历险记目录 三星sm-g7200打开微信慢,无法正常收看,网速不慢。 笔记本电脑如何调亮屏幕亮度 大伙说说洗衣机要不要带烘干好 热烘干洗衣机怎么样 ef英语哪个好 为什么情绪化的人那么难相处,还是想交往? 为什么说和情绪化的人相处很难 一万五千二百一十六英语如何译 巴黎5日游一万五千一个人 用英语怎么表达? 大概意思都行 计算机网络--IP 多播 实验室中检验氧气的方法是:___,检验二氧化碳的方法是__ 菲佣算国内生产总值吗 纵隔淋巴结 我想问一下中国不允许菲佣是什么原因 如何取得立体车库安装许可证 淋巴结什么科 血管淋巴管外科学内容简介 身上长淋巴是什么意思? 姑娘,快摸摸自己的淋巴,出现这种情况赶紧去医院 君子兰春天怎么晒太阳 临朐县盐务局单位简介 车辆未年检如何申请报废? 奥迪carplay投屏到仪表盘 大连市节能与新能源汽车实验室正式揭牌 大连413线路49辆新能源车上岗 施工合同发包方违约责任是什么? 建筑合同发包违约的责任主要有什么 工程总承包合同违约责任有哪些 姚奕辰基本资料 姚奕辰是什么星座的 工程合同的违约责任部分包括哪些 这什么鸭子?头上的毛是天生的形状吗? 时代少年团第一张实体专辑来了,你是从什么时候开始粉上这个组合的?_百... ...王者荣耀好听的昵称_王者荣耀个性昵称_王者荣耀名字网名大全... 目前施工承包合同中发包人违约责任是什么 合金装备和平行者 人间大炮的问题 冬季养生这种茶坚持喝让你远离病毒 《史莱姆牧场》1小时快速发展赚钱攻略介绍_《史莱姆牧场》1小时快速发 ... 茄子的技上有小刺对吗 泡什么喝能降低二恶英对身体的危害 金郝庄简介 A型肉毒毒素用法用量 金郝庄东村村庄概况 陕西土葬时会有一个仪式叫做《乐队献艺》,这是为什么,代表什么意思... 肖寨北村村庄概况 ps文字选择不了单独文字ps文字选择不了单独文字怎么回事