认识CSS中css的三大特性:层叠性、继承性以及优先级
前端之HTML、CSS(四)
CSS
CSS三大特性
层叠性:多种样式的叠加,一个属性通过两个选择器设置在同一个元素上,后一个样式会把前一个样式层叠(覆盖)。层叠性的两种情况:第一种样式冲突时,后样式覆盖前样式;第二种样式不冲突时,前后样式互补共同作用同一元素。(冲突:样式属性一样)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>层叠性-测试</title>
<style type="text/css">
p {
color: red;
font-size: 20px;
}
p {
color: blue;
}
</style>
</head>
<body>
<p>层叠性</p>
</body>
</html>
继承性:HTML“晚辈”标签会继承“长辈”标签的某些样式属性。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>继承性-测试</title>
<style type="text/css">
div {
color: red;
}
</style>
</head>
<body>
<div>
<p>继<span>承</span>性</p>
<p><a href="#">继承性</a></p>
</div>
</body>
</html>
注意:不是所有属性都可以继承,一般以text-、font-、line-开头的属性以及color属性可以继承,某些标签也同样不会继承属性。
优先级:CSS三种写入方式:行内样式,内部样式表、外部样式表的优先级关系:行内样式>内部样式表>外部样式表,即一个HTML文档中同时存在三种CSS样式写入,首选行内样式表加载。CSS选择器的三种基本类型:ID选择器、类选择器、标签选择器的优先级关系:ID选择器>类选择器>标签选择器,即三种选择器为同一元素标签设置同一种样式属性,首选ID选择器设置的样式属性。设定ID选择器权值为100,类选择器(伪类选择器)权值为10,标签选择器权值为1,复合选择器中使用的基本选择器组合之间使用加法获取总的权值,权值越高,样式属性选择越优先。如.nav p { }权值为10 + 1 = 11。此外,通配符选择器* { }和继承权值为0,权值相同按照层叠性加载,
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>优先级-测试</title>
<style type="text/css">
#pid {
color: blue; /*ID选择器权值为100*/
}
.priority {
color: green; /*类选择器权值为10*/
}
p {
color: red; /*标签选择器权值为1*/
}
</style>
</head>
<body>
<p class="priority", id="pid">优先级</p>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>优先级-测试</title>
<style type="text/css">
.complement p {
color: green; /*权值为10 + 1 = 11*/
}
div p {
color: red; /*权值为1 + 1 = 2*/
}
</style>
</head>
<body>
<div class="complement">
<p>复合选择器权值测试</p>
</div>
</body>
</html>
注意:可以在样式属性的属性值后追加!important为某一类型选择器增加权值,增加值为+∞,即追加!impotant的选择器一定优先加载。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>优先级-测试</title>
<style type="text/css">
#pid {
color: blue; /*ID选择器权值为100*/
}
.priority {
color: green; /*类选择器权值为10*/
}
p {
color: red!important; /*标签选择器权值为1*/
}
</style>
</head>
<body>
<p class="priority", id="pid">优先级</p>
</body>
</html>
注意:继承权值为0
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>优先级-测试</title>
<style type="text/css">
.complement {
color: green; /*权值为10*/
}
p {
color: red; /*权值为1*/
}
</style>
</head>
<body>
<div class="complement">
<!-- 父标签权值为10,子标签权值为1,然而继承权值为0,故字体颜色为红色 -->
<p>复合选择器权值测试</p>
</div>
</body>
</html>
权重练习测试
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="keywords" content="关键词1,关键词2,关键词3" />
<meta name="description" content="对网站的描述" />
<title>第1题</title>
<style type="text/css">
#father #son{
color:blue;
}
#father p.c2{
color:black;
}
div.c1 p.c2{
color:red;
}
#father{
color:green !important; /* 继承的权重为0 */
}
</style>
</head>
<body>
<div id="father" class="c1">
<p id="son" class="c2">
试问这行字体是什么颜色的?
</p>
</div>
</body>
</html> <!-- 答案:blue --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="keywords" content="关键词1,关键词2,关键词3" />
<meta name="description" content="对网站的描述" />
<title>第2题</title>
<style type="text/css">
#father{
color:red;/* 继承的权重为0 */
}
p{
color:blue;
}
</style>
</head>
<body>
<div id="father">
<p>试问这行字体是什么颜色的?</p>
</div>
</body>
</html> <!-- 答案:blue --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="keywords" content="关键词1,关键词2,关键词3" />
<meta name="description" content="对网站的描述" />
<title>第3题</title>
<style type="text/css">
div p{
color:red;
}
#father{
color:red;
}
p.c2{
color:blue;
}
</style>
</head>
<body>
<div id="father" class="c1">
<p class="c2">
试问这行字体是什么颜色的?
</p>
</div>
</body>
</html> <!-- 答案:blue --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="keywords" content="关键词1,关键词2,关键词3" />
<meta name="description" content="对网站的描述" />
<title>第4题</title>
<style type="text/css">
div div{
color:blue;
}
div{
color:red;
}
</style>
</head>
<body>
<div>
<div>
<div>
试问这行字体是什么颜色的?
</div>
</div>
</div>
</body>
</html> <!-- 答案:blue --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>第5题</title>
<style type="text/css">
div div div div div div div div div div div div{
color:red;
}
.me{
color:blue;
}
</style>
</head>
<body>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div class="me">试问这行文字是什么颜色的</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html> <!-- 答案:blue --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>第6题</title>
<style type="text/css">
.c1 .c2 div{
color: blue;
}
div #box3{
color:green;
}
#box1 div{
color:yellow;
}
</style>
</head>
<body>
<div id="box1" class="c1">
<div id="box2" class="c2">
<div id="box3" class="c3">
文字
</div>
</div>
</div>
</body>
</html> <!-- 答案:yellow -->
认识CSS中css的三大特性:层叠性、继承性以及优先级的更多相关文章
- CSS 三大特性 层叠 继承 优先级
css三大特性 层叠性: 如果一个属性通过两个相同选择器设置到同一个元素上,相同的属性就会出现冲突,那么这个时候一个属性就会将另一个属性层叠掉,采用的是就近原则 继承性: 子标签会继承父标签的某些样式 ...
- java中面向对象的三大特性小结
java中面向对象的三大特性:封装.继承.多态 封装 把抽象的数据和对数据的操作封装在一起,隐藏变量的实现细节.数据被保护在内部,程序的其他部分只有通过被授权的操作(成员方法)才能对数据进行访问. 1 ...
- JavaScript中面向对象的三大特性(一个菜鸟的不正经日常)
经过几天的学习,把jQuery给啃会了,但是运用的还不算特别熟练,总感觉自己在JavaScript方面的基础十分欠缺,所以继续拾起JavaScript,开始更好的编程之旅~ 今天学的是JavaScri ...
- CSS中继承,特殊性,层叠与重要性
继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代.比如下面代码: <html><head> ...
- css的层叠性+继承性+优先级+权重
一.层叠性 1.含义 多种css样式叠加,浏览器处理冲突的能力. 2.原则 1>一般情况下,若出现冲突,会按照css的书写顺序,以最后的样式为准 2>样式不冲突,就不会层叠 二.css的继 ...
- 认识CSS中css引入方式、选择器、文本样式设置以及显示模式
前端之HTML.CSS(三) CSS CSS-Cascading Styles Sheets,层叠样式表.用于网页的表现,主要用于布局和修饰网页. CSS引入方式 CSS的三种引入方式:行内样式,内部 ...
- css中定位功能的特性
它有四大特性,页面找不到盒子的情况 1.z-index值表示谁压着谁,数值大的压盖数值小的 2.只有定位了的元素,才有z-index.也就是说,不管相对定位,绝对定位,固定定位,都可以使用z-inde ...
- css中z-index属性(标签层叠次序)
定义和用法 z-index 属性设置元素的堆叠顺序.拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面. 注释:元素可拥有负的 z-index 属性值. 注释:Z-index 仅能在定位元素上奏 ...
- 认识CSS中css背景样式设置
前端之HTML,CSS(五) CSS CSS背景 CSS可以添加背景颜色和背景图片,也可以对图片进行设置.设置的样式有: background-color 背景颜色 background-image ...
随机推荐
- c++(重载等号=操作为深拷贝)
// ConsoleApplication19.cpp : 定义控制台应用程序的入口点. // #pragma warning(disable:4996) #include "stdafx. ...
- rpmbuild SPEC语法
rpmbuild SPEC语法 摘自:http://bbs.chinaunix.net/thread-4179207-1-1.html spec文件写作规范 2008-09-28 11:52:17 分 ...
- unbutu下wireshark编译安装(已更新)
今天下午在ubuntu下进行编译安装wireshark,过程中出了很多错误,但最终安装成功了,这里写下自己的安装步骤和方法,有参考博文的安装编译方法,也有自己的总结和心得. 1 安装编译工具 $sud ...
- App测试从入门到精通之性能测试
好了,上节我们介绍了关于APP测试的功能测试方面一些细节.这一篇我们来介绍一下,关于APP测试过程中的性能测试参考要点,我们需要思考的如下: 响应时间 1.APP安装卸载的响应时间 2.APP各种功能 ...
- springboot-条件化注解
在项目中,有时会遇到我们的Configuration.Bean.Service等等的bean组件需要依条件按需加载的情况.那么Spring Boot怎么做的呢?它为此定义了许多有趣的条件,当我们将它们 ...
- Java 核心类库之反射机制
1:什么是反射机制? 2:反射机制它可以做什么呢? 3:反射机制对应的API又是什么? 1):通过反射机制来获取一个对象的全限定名称(完整包名),和类名: 2):实例化Class对象 3):获取对象的 ...
- ubuntu14.04LTS下制作安装启动U盘
ubuntu自带的启动U盘制作工具在我的非UEFI电脑上无法启动,找到一个国产的好用东西:深度deepin-boot-maker. 下载地址(官方百度盘):点击下载 用起来也很简单,只需要选择下载好的 ...
- 享元(Flyweight)模式
享元(Flyweight)模式:运用共享技术有效的支持大量细粒度的对象. /* * 抽象享元(Flyweight)角色:此角色是所有的具体享元类的超类,为这些类规定出需要实现的公共接口. 那些需要外蕴 ...
- Nginx conf基本配置
#定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_processes 8; #全局错误日志定义类型,[ debu ...
- MVN package install error javac: invalid target release: 1.8
现象:---------------------------------[ERROR] Failure executing javac, but could not parse the error:j ...