css(外部样式表)中各种选择器(定义属性时)的优先级
今天在学css的时候遇到一个问题,用css的外部样式表改变一个<p>元素的颜色,死活就是改变不了,最后才发现是优先级的问题(我自己想当然成后面的优先级就高了,犯了经验主义错误)。
先给大家看看代码:html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>这是第二个测试网页</title>
<link rel="stylesheet" type="text/css" href="./css/demo.css">
</head> <body>
<!--这个网页共分成三个比较大的块-->
<!--这是第一个块-->
<div id="d1">
<p id="p1">id为p1的文字</p>
<p id="p2">id为p2的文字</p>
<p id='p3'>id为p3的文字</p>
</div>
<!--这是第二个块-->
<div id="d2">
<p class="c1">class为c1的文字</p>
<p class="c2">class为c2的文字</p>
<p id="pc3" class='c3'>class为c3的文字</p>
</div>
<!--这是第三个块-->
<div>
</div>
</body>
</html>
css代码:
#d1
{
background:blue;
}
#d2
{
background:yellow; color:white;
}
.c3
{
color:red;
}
p
{
color:green;
text-align:center;
}
这两个文件里面的代码应该来讲,结构是非常清晰的。那么重点来看css的代码。
#d1和#d2是id选择器,它们分别想让第一个div中的背景为蓝色,第二个div中的背景为黄色,且字体为白色;
.c3控制的是第二个div中第三行的p元素,想让其成为红色;
p控制但是全文中的段落文字的显示样式,这里想让他们居中,且文字颜色为绿色。
那么大家猜猜,网页显示的结果是咋样的呢?
我在网上搜到一个帖子,里面讲的井井有条:
w3schools说css的顺序是“元素上的style” > “文件头上的style元素” >“外部样式文件”;
对于同在一个样式文件中的属性控制:
1.样式表的元素选择器选择越精确,则其中的样式优先级越高:id选择器指定的样式 > 类选择器指定的样式 > 元素类型选择器指定的样式;
2.对于相同类型选择器指定的样式,在样式表文件中,越靠后的优先级越高:注意,这里是样式表文件中越靠后的优先级越高,而不是在元素class出现的顺序。
最后放上我的代码的执行结果,供大家参考:
css(外部样式表)中各种选择器(定义属性时)的优先级的更多相关文章
- CSS渐变中是如何定义渐变线的
在CSS语法中用户代理对渐变gradient语法的解析渲染离不开渐变线.渐变分为线性渐变(linear gradient)和径向渐变(radial gradient). 渐变在元素盒模型中backgr ...
- css选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先
通配选择符* { sRules } 类型选择符E { sRules } td { font-size:14px; width:120px; } 属性选择符 E [ attr ] { sRule ...
- css运用中,对position属性的认识
position属性有: static : 无特殊定位,对象遵循HTML定位规则 absolute : 将对象从文档流中拖出,使用left,right,top,bottom等属性进行绝对定位.而其层叠 ...
- CSS 3 中的多列属性
.column-count <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- 第7.26节 Python中的@property装饰器定义属性访问方法getter、setter、deleter 详解
第7.26节 Python中的@property装饰器定义属性访问方法getter.setter.deleter 详解 一. 引言 Python中的装饰器在前面接触过,老猿还没有深入展开介绍装饰 ...
- Android自己定义控件而且使其能够在xml中自己定义属性
为什么要自己定义View android开发中自己定义View的优点是显而易见的.比方说以下的这个顶部导航,它被设计出如今应用的每一个界面,但每次的内容却不尽同样.我们不能在每一个layout资源中都 ...
- WPF中的依赖项属性
Form cnblogs 桂素伟 随着WPF的推广,不得不重新拾起WPF来,因为这块的产品越来越多. 只能跟着MSDN来学了,所以想是在这里记录下学习的过程和对知识的理解. 先从最基本的吧,依赖项属性 ...
- WPF中的依赖项属性(转)
出处:https://www.cnblogs.com/axzxs2001/archive/2010/04/25/1719857.html 随着WPF的推广,不得不重新拾起WPF来,因为这块的产品越来越 ...
- Django框架(五):模型(一) 定义属性
1. 定义属性 Django根据属性的类型确定以下信息: 当前选择的数据库支持字段的类型 渲染管理表单时使用的默认html控件 在管理站点最低限度的验证 django会为表创建自动增长的主键列,每个模 ...
随机推荐
- java导入项目有红色叹号
原因:缺少jar包 解决: 选中项目 -> 右键 -> Build Path -> Configer Builder Path -> 删除掉有错的J ...
- 济南清北学堂游记 Day 2.
在大佬云集的地方被直线碾压是什么样的体验? 大概就是210和1030的差别. 大概就是高质量机械键盘和空气的区别. 回来的路上,我一直在想,我到底是不是一个高三的? 大概也是能找到以前在家和学校训练时 ...
- ubuntu16.04安装ftp服务器
参考文章: http://www.linuxidc.com/Linux/2017-01/139233.htm 1.检查是否安装vsftpd,如果安装了跳过第二步 vsftpd -v 2.安装vsftp ...
- angular-file-upload封装为指令+图片尺寸限制
不了解angular-file-upload基础使用 请先参考http://blog.csdn.net/lai_xu/article/details/49535847 博客地址 下文如果有更好的建议请 ...
- Spring框架系列(二)之Bean的注解管理
微信公众号:compassblog 欢迎关注.转发,互相学习,共同进步! 有任何问题,请后台留言联系! 1.Spring中的两种容器 在系列(一)中我们已经知道,Spring 是管理对象的容器,其中有 ...
- hibernate之实体@onetomany和@manytoone双向注解(转)
下面是User类: @onetomany @Entity @Table(name="user") public class User implements Serializable ...
- CentOS7关闭/开启防火墙出现 Unit iptables.service failed to load
在vm中安装好tomcat,而且在liunx中使用nc命令可以返回成功,但是更换到window中访问不到tomcat的情况,是由于linux防火墙的问题造成的,传统的解决方式有2中 第一种解决方案: ...
- 用yii2给app写接口(上)
Yii2如何实现RESTful风格的API 1.建立单独的应用程序 为了增加程序的可维护性,易操作性,我们选择新建一套应用程序,这也是为了和前台应用.后台应用区分开操作.有些人要嚷嚷了,为啥非得单独搞 ...
- TP5整合 WorkerMan 以及 GatewayWorker
TP5整合GatewayWorker Windows版安装 a)使用composer create-project topthink/think testTG,来安装thinkphp5. b)进入t ...
- 使用commons-csv简单读写CSV文件
文章首发于我的github博客 需求 客户的开发测试环境将做迁移.因此需要对zookeeper上的重要的数据以CSV文件格式做备份. 本文通过Apache的commons-csv操作CSV文件.官网地 ...