分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

css(外部样式表)中各种选择器(定义属性时)的优先级

发布时间:2023-09-06 01:16责任编辑:顾先生关键词:选择器

今天在学css的时候遇到一个问题,用css的外部样式表改变一个<p>元素的颜色,死活就是改变不了,最后才发现是优先级的问题(我自己想当然成后面的优先级就高了,犯了经验主义错误)。

先给大家看看代码:html

 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>这是第二个测试网页</title> 6 <link rel="stylesheet" type="text/css" href="./css/demo.css"> 7 </head> 8 ?9 <body>10 <!--这个网页共分成三个比较大的块-->11 ????<!--这是第一个块-->12 ????<div id="d1">13 ????????<p id="p1">id为p1的文字</p>14 ????????<p id="p2">id为p2的文字</p>15 ????????<p id=‘p3‘>id为p3的文字</p>16 ????</div>17 ????<!--这是第二个块-->18 ????<div id="d2">19 ????????<p class="c1">class为c1的文字</p>20 ????????<p class="c2">class为c2的文字</p>21 ????????<p id="pc3" class=‘c3‘>class为c3的文字</p>22 ????</div>23 ????<!--这是第三个块-->24 ????<div>25 ????</div>26 </body>27 </html>

css代码:

 1 #d1 2 { 3 ????background:blue; 4 } 5 #d2 6 { 7 ????background:yellow; 9 ????color:white;10 }11 .c312 {13 ????color:red;14 }15 p16 {17 ????color:green;18 ????text-align:center;19 }

这两个文件里面的代码应该来讲,结构是非常清晰的。那么重点来看css的代码。

#d1和#d2是id选择器,它们分别想让第一个div中的背景为蓝色,第二个div中的背景为黄色,且字体为白色;

.c3控制的是第二个div中第三行的p元素,想让其成为红色;

p控制但是全文中的段落文字的显示样式,这里想让他们居中,且文字颜色为绿色。

那么大家猜猜,网页显示的结果是咋样的呢?

我在网上搜到一个帖子,里面讲的井井有条:

w3schools说css的顺序是“元素上的style” > “文件头上的style元素” >“外部样式文件”;

对于同在一个样式文件中的属性控制:

1.样式表的元素选择器选择越精确,则其中的样式优先级越高:id选择器指定的样式 > 类选择器指定的样式 > 元素类型选择器指定的样式;

2.对于相同类型选择器指定的样式,在样式表文件中,越靠后的优先级越高:注意,这里是样式表文件中越靠后的优先级越高,而不是在元素class出现的顺序。

最后放上我的代码的执行结果,供大家参考:

css(外部样式表)中各种选择器(定义属性时)的优先级

原文地址:http://www.cnblogs.com/wsg25/p/7643283.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved