CSS基础 CSS的三大特性以及选择器优先级计算方法
1.子元素默认会继承父元素的样式,但不是所有的元素都有继承
常见的继承父元素特点的元素有:
1.color
2.font-sytle、font-weight、font-size、font-family
3.text-indent、text-align
注意:可以通过chrome浏览器查看是否支持继承,可在style中看到inherited from (div father)。。。也就是说权限来自于哪里
应用场景
(1)去除ul中的无序列表中的小黑点,可以直接设置给ul{list-style:none;} 相等于 li{list-style:none;}
(2)修改整体浏览器的字体大小,可以直接设置body的字体大小;
继承失效的常见标签说明
a标签继承失败原因呢,它本身有浏览器默认样式和颜色,所以失败 |
h1标签继承失败的原因,h1的特性是两个字的大小,如果父级是20px,则h1文字大小是40px |
div标签高度继承失败原因,是本身不具备继承,宽度感觉可以继承,其实是因为div本身的特性<独占一行>特显出来的 |
注释:继承和本身的样式的优先级,优先与它本身的自己的样式,而后继承
2.CSS的层叠性
特性:1.多个样式可以叠加到一个标签上
2.一个标签,相同样式则会覆盖,以最后一个样式为准
注意:选择器要在同一个优先级的情况产生的情况,优先级顺序:继承<通配符选择器<标签选择器<类选择器<id选择器<行内样式<!important
3.优先级的使用方法
公式:
继承<通配符选择器<标签选择器<类选择器<id选择器<行内样式<!important
注意点:1.!important写在属性值的后面,分号的前面;
2.!important不能提升继承的优先级,使用也是无效的;
3.事件开发中不建议使用!important;
4.复合选择器 权重叠加计算
比较规则
1.从左到依次比较,各个选择器或样式出现的个数,最大的优先级大;
2.如果第一个行内样式出现的个数相同时候,比较第二个id选择器的个数,依次比较;
3.如果最终的数字相同,表示优先级相同,则比较层叠型,谁写在最后谁生效;
例如:结构
<div class='father'>
<p class='son' id='first'>内容
</div>
CSS样式:
div #first{ /* 0 ,1 ,0, 1 */
color:red;
}
.father .son{ /* 0 ,0, 2 ,0 */
color:blue;
}
.father p{ /* 0 , 0 , 1 , 1 */
color:pink;
}
div p{ /* 0 , 0 , 0, 2 */
color:green;
}
由此对比可得div #first的复合选择器优先级高,则显示红色字体;从左到右依次比较
注意:1.先比较是否能匹配到要得到的内容,如果只有个别是继承的直接pass,如果有交集选择器在css中出现,在数它的个数的时候也要算在内;比如p.one,则是1个标签选择器和一个类选择器
2.如果都是继承来的样式,优先取父元素的样式使用
CSS基础 CSS的三大特性以及选择器优先级计算方法的更多相关文章
- HTML&CSS基础-子元素和后代元素选择器
HTML&CSS基础-子元素和后代元素选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.html源代码 <!DOCTYPE html> <html ...
- HTML&CSS基础-子元素的伪类选择器
HTML&CSS基础-子元素的伪类选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.html的源代码 <!DOCTYPE html> <html& ...
- css基础-css选择器和css文本样式相关
css基础-css选择器和css文本样式相关: 使用link链入外部样式,页面加载时会同时加载样式 @import url(“*.css”);使用导入式,页面加载完后,才会加载样式 链接伪类的顺序 : ...
- HTML&CSS基础-CSS的语法
HTML&CSS基础-CSS的语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.dome.html源代码 <!DOCTYPE html> <html ...
- [.net 面向对象编程基础] (11) 面向对象三大特性——封装
[.net 面向对象编程基础] (11) 面向对象三大特性——封装 我们的课题是面向对象编程,前面主要介绍了面向对象的基础知识,而从这里开始才是面向对象的核心部分,即 面向对象的三大特性:封装.继承. ...
- [.net 面向对象编程基础] (12) 面向对象三大特性——继承
[.net 面向对象编程基础] (12) 面向对象三大特性——继承 上节我们说了面向对象的三大特性之一的封装,解决了将对同一对象所能操作的所有信息放在一起,实现统一对外调用,实现了同一对象的复用,降低 ...
- [.net 面向对象编程基础] (13) 面向对象三大特性——多态
[.net 面向对象编程基础] (13) 面向对象三大特性——多态 前面两节,我们了解了面向对象的的封装和继承特性,面向对象还有一大特性就是多态.比起前面的封装和继承,多态这个概念不是那么好理解.我们 ...
- OC基础 类的三大特性
OC基础 类的三大特性 OC的类和JAVA一样,都有三大特性:继承,封装,多态,那么我们就来看一下OC中类的三大特性. 1.继承 继承的特点: (1)子类从父类继承了属性和方法. (2)子类独有的属 ...
- Java基础-面向对象第三大特性之多态(polymorphism)
Java基础-面向对象第三大特性之多态(polymorphism) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.多态概述 多态是继封装,继承之后,面向对象的第三大特性,多态的 ...
随机推荐
- 【Services】【Web】【tomcat】配置tomcat支持https传输
1. 基础: 1.1. 描述:内网的tomcat接到外网nginx转发过来的请求之后需要和外网的客户端进行通讯,为了保证通讯内容的安装,使用tomcat使用https协议. 1.2. 链接:http: ...
- Spring实现类私有方法测试通用方案
现实的业务场景中,可能需要对Spring的实现类的私有方法进行测试. 场景描述: 比如XXXService里有 两个函数a.函数b. 而实现类XXXServiceImpl中实现了函数a.函数b,还包含 ...
- Tomcat简单介绍
1.目录结构 在conf文件夹中修改了配置之后一定要重启Tomcat
- 【简】题解 P4297 [NOI2006]网络收费
传送门:P4297 [NOI2006]网络收费 题目大意: 给定一棵满二叉树,每个叶节点有一个状态(0,1),任选两个叶节点,如果这两个叶节点状态相同但他们的LCA所管辖的子树中的与他们状态相同的叶节 ...
- Nginx模块之stub_status
目录 一.介绍 二.使用 三.参数 一.介绍 Nginx中的stub_status模块主要用于查看Nginx的一些状态信息. 当前默认在nginx的源码文件中,不需要单独下载 二.使用 本模块默认是不 ...
- [BUUCTF]PWN——[BJDCTF 2nd]r2t4
[BJDCTF 2nd]r2t4 附件 步骤 例行检查,64位,开启了canary和nx 64位ida载入,检索字符串的时候发现了后面函数,shell_addr=0x400626 main函数 可以溢 ...
- Sysenter/Kifastcallentry hook 检测与恢复
关于Sysenter.Kifastcallentry.中断之类的内核入口hook技术早就烂大街了,可是对hook的检测与恢复代码却是寥寥无几,一切抛开代码将原理的行为都是耍流氓. 下面以Sysente ...
- 记一次 .NET 某市附属医院 Web程序 偶发性CPU爆高分析
一:背景 1. 讲故事 这个月初,一位朋友加微信求助他的程序出现了 CPU 偶发性爆高,希望能有偿解决一下. 从描述看,这个问题应该困扰了很久,还是医院的朋友给力,开门就是 100块 红包 ,那既然是 ...
- CF793A Oleg and shares 题解
Content 有 \(n\) 支股票,第 \(i\) 支股票原价为 \(a_i\) 卢布.每秒钟可能会有任意一支股票的价格下降 \(k\) 卢布,以至于降到负数.求所有股票的价格均变得相同所要经过的 ...
- LuoguP7285 「EZEC-5」修改数组 题解
Content 有一个长度为 \(n\) 的 \(0/1\) 串,你可以修改当中的一些元素,求修改后最长的连续为 \(1\) 的子串长度减去修改次数的最大值. 数据范围:\(1\leqslant n\ ...