Css - 三大特性
css - 三大特性
1.继承性
祖先元素的关于文本的样式会遗传给后代元素,其它则不会。后代元素会继承祖先元素的关于文本的css样式(水平对齐、字号、字色、行高等)。但a元素不会应用继承来的color,这是因为父元素设置{ color:xx }虽然可以 遗传给子a元素,但子a元素的color有默认的定义(a:link:{ color:blue })。
2.层叠性
如果通过两个相同选择器设置了同一个元素的某个相同的css属性,按照css相同属性的出现顺序,后面的样式会覆盖前面的样式
width: 50px;
line-height: 50px;
text-align: center;
color: #fff;
font-weight: 900;
margin: 10px auto;
}
#box {
background: red;
}
#box {
background: black; //覆盖了红色
}
<div id="box">H</div>

3.优先性(权重)
如果通过不同的选择器设置了同一个元素的同一个css属性,则浏览器在应用css样式时会判定选择器的权重,权重最大的会被首先考虑。
单个权重的计算
2.行内样式=1000,直接在html标签里通过style设置的样式
3.id选择器=0100
4.类选择器=0010
5.标签选择器=0001
6.*=0000
id=0100>html tag=0001,所以会应用id所设置的css样式,html标签选择器的样式被忽略
background: red;
}
权重0001
div {
background: black; //被忽略
}
<div id="box">H</div>

多个权重的计算
width: 50px;
line-height: 50px;
text-align: center;
color: #fff;
font-weight: 900;
margin: 10px auto;
background: red;
}
0100 id权重值
+ 0001 标签权重值
= 0101
#box span {
background: #4800ff;
}
0001 标签权重值
span {
background: black;
}
0101>0001,选择了#box span选择器的设置,span选择器被忽略
style>
ad>
y>
<div id="box">
<span>H</span>
</div>

权重叠加没有进制,不是满十进一,而是满十向后补0
0001
0001
0001
0001
0001
0001
0001
0001
+ 0001
= 00010
div div div div div div div div div a {
color: red;
}
0100
#link {
color: black;
}
*号选择器的权重是0000,但important的权重是无穷大
* {
color: green !important;
}
最终选择了*号选择器的设置
父子权重计算
无论父的优先级的值有多高,子继承后就是0或none。
color:black !important;
}
a{
color: red;
}
<div><a href="#" id="link">首页</a></div> //取red
通配符选择的是元素自身,此时通配符要大于从父元素继承的权重
*{ color:#000; }
<div><p>fuck gov</p></div> //p标签的color取值#000
Css - 三大特性的更多相关文章
- CSS.02 -- 样式表 及标签分类(块、行、行内块元素)、CSS三大特性、背景属性
样式表书写位置 内嵌式写法 <head> <style type="text/css"> 样式表写法 </style> </head&g ...
- CSS三大特性(继承、优先级、层叠)之个人见解
首先声明一下CSS三大特性——继承.优先级和层叠.继承即子类元素继承父类的样式,比如font-size,font-weight等f开头的css样式以及text-align,text-indent等t开 ...
- python 之 前端开发(CSS三大特性、字体属性、文本属性、背景属性)
11.38 css三大特性 11.381 继承性 1.定义:给某一个元素设置一些属性,该元素的后代也可以使用,这个我们就称之为继承性2.注意: 1.只有以color.font-.text-.l ...
- CSS 三大特性 层叠 继承 优先级
css三大特性 层叠性: 如果一个属性通过两个相同选择器设置到同一个元素上,相同的属性就会出现冲突,那么这个时候一个属性就会将另一个属性层叠掉,采用的是就近原则 继承性: 子标签会继承父标签的某些样式 ...
- css三大特性及权重说明
一.三大特性简述 层叠性: 后来的覆盖前面的 (长江后浪推前浪) 继承性: 子标签会继承父标签的某些样式 (跟文字有关的一般都会继承) 优先级: 设计到一个算法“css特殊性(Specificity) ...
- 前端面试 CSS三大特性
CSS的三大特性 1.层叠性 代码由上向下执行,相同选择器设置到同一元素上,样式冲突的,会执行比较靠近html的样式,样式不冲突的情况下不影响 代码如下 <!DOCTYPE html> & ...
- CSS系列 (03):CSS三大特性
层叠性 层叠性指的是样式的优先级,当产生冲突时以优先级高的为准,优先级相同时取后面定义的属性样式. 继承性 继承性指的是子孙元素可以继承父元素的属性. 记录一下开发中常用的继承属性: 字体系列 fon ...
- css的三种引入方式、常用的元素选择器以及css三大特性
第一.html文件中如何使用css html文件中使用css有3种方式:链接式.嵌入式.行内式,推荐使用程度依次递减:1.链接式:在html文件通过<link />标签引入,rel属性值必 ...
- CSS【05】:CSS三大特性
继承性 作用:给父元素设置一些属性,子元素也可以使用,这个我们就称之为继承性 示例代码: <style> div { color: red; } </style> <di ...
随机推荐
- Luogu P4551 最长异或路径
题目链接 \(Click\) \(Here\) \(01Trie\)好题裸题. 取节点\(1\)为根节点,向下扫每一个点从根节点到它路径上的异或和,我们可以得到一个\(sumx[u]\). 现在路径异 ...
- Vue.js 循环语句
循环使用 v-for 指令. v-for 指令需要以 site in sites 形式的特殊语法, sites 是源数据数组并且 site 是数组元素迭代的别名. v-for 指令: v-for 可以 ...
- 被顶级学术期刊枪毙的p.Value到底是个什么鬼
总结一下,在我看来,p.Value仅仅是在,假设检验,这理论框架下,对于证据力度的一个测量.而且,我们不大可能推翻假设检验这个框架,似乎也不必要,因为,这个框架非常合理,有广泛的应用场景,有强大的生命 ...
- 网络编程基础【day09】:socketserver使用(九)
本节内容 1.概述 2.socketserver类型 3.创建socketserver步骤 4.简单的代码实现 一.概述 我们之前的用户都是不支持多并发的,所以我们现在需要一个支持多用户,实现一个并发 ...
- 设计模式---行为变化模式之访问器模式(Visitor)
一:概念 访问者模式,是行为模式之一,它分离对象的数据和行为,使用Visitor模式,可以不修改已有类的情况下,增加新的操作角色和职责. 二:动机 在软件构建的过程中,由于需求的改变,某些类层次结构中 ...
- 设计模式---数据结构模式之组合模式(Composite)
前提:数据结构模式 常常有一些组建在内部具有特定的数据结构,如果让客户程序依赖这些特定的数据结构,将极大的破坏组件的复用.这时候,将这些数据结构封装在内部,在外部提供统一的接口,来实现与特定数据结构无 ...
- SqlServer中的事务使用
一.事务的概念和特点 事务(transaction)是恢复和并发控制的基本单位. 事务的特点 原子性:事务是一个工作单元,要都成功,要么的失败 例子:A付款给B,A余额-100,B余额+100,只能都 ...
- 开源图片文字识别引擎——Tesseract OCR
Tessseract为一款开源.免费的OCR引擎,能够支持中文十分难得.虽然其识别效果不是很理想,但是对于要求不高的中小型项目来说,已经足够用了. 文字识别可应用于许多领域,如阅读.翻译.文献资料的检 ...
- 解决Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.17 问题
详细报错如下 Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.17 from http://maven ...
- 【leetcode-69】 x 的平方根
(主要是越界问题) 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去. 示例 1: 输入: 4 ...