CSS导读 (CSS的三大特性 上)

(大家好,今天我们将继续来学习CSS的相关知识,大家可以在评论区进行互动答疑哦~加油!💕)


目录

五、CSS的三大特性

5.1  层叠性

5.2  继承性

 5.2.1  行高的继承

5.3  优先级

小练习


五、CSS的三大特性

CSS有三个非常重要的特性:  层叠性、 继承性、 优先级。


5.1  层叠性

 相同选择器给设置相同的样式,此时一个样式就会覆盖(层叠)另一个冲突的样式。

  • 层叠性主要解决样式冲突的问题。

层叠性原则: 

  1. 样式冲突,遵循的原则是就近原则,哪个样式离结构近,就执行哪个样式。 
  2. 样式不冲突,不会重叠。

代码: 

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS层叠性</title><style>div {color: red;font-size: 20px;}div {color: pink;}</style>
</head><body><div>长江后浪推前浪,前浪死在沙滩上</div>
</body></html>

(口决:长江后浪推前浪,前浪死在沙滩难上) 


5.2  继承性

CSS中的继承性:子标签会继承父标签的某些样式,如文本颜色和字号。简单的理解就是子承父业。

  1. 恰当地使用继承可以简化代码,降低CSS的样式复杂性。 
  2. 子元素可以继承父元素的样式(text-,font-,line-这些元素开头的可以继承,以及color属性。

代码: 

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS继承性</title><style>div {color: pink;font-size: 14px;}</style>
</head><body><div><p>龙生龙,凤生凤,老鼠生的孩子会打洞</p></div>
</body></html>

 (口决:龙生龙,凤生风,老鼠生的儿子会打洞)

 5.2.1  行高的继承

例:

body {

   font:12px /1.5  Microsoft YaHei;

}   

 (1.5是当前元素文字大小的1.5倍)

  •  行高可以跟单位也可以不跟单位。
  • 如果子元素没有设置行高,则会继承父元素的行高为1.5 。
  • 此时子元素的行高为:当前子元素文字大小*1.5 。
  • body行高1.5,这样写法最大的优势就是里面的子元素可以根据自己文字大小调整行高。

代码: 

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS行高继承性</title><style>body {color: pink;/* font: 12px/24px 'Microsoft YaHei'; */font: 12px/1.5 'Microsoft YaHei';}div {/* 子元素继承了父元素 body 的行高 1.5 *//* 这个1.5 就是当前元素文字大小 font-size 的1.5倍所以当前div 的行高就是14 * 1.5 = 21像素 */font-size: 14px;}p {/* 1.5 * 16 =  24 当前的行高 */font-size: 16px;}/* li 没有手动指定文字大小  则会继承父亲的 文字大小  body 12px 所以 li 的文字大小为 12px 当前li 的行高就是  12 * 1.5  =  18 */</style>
</head>
<body><div>粉红色的回忆</div><p>粉红色的回忆</p><ul><li>我没有指定文字大小</li></ul>
</body>
</html>

5.3  优先级

当同一个元素指定多个选择器、就会有优先级的产生。

  • 选择器相同,则执行层叠性。
  • 选择器不同,则根据选择器权重执行。
选择器选择器权重
继承或者*0,0,0,0
元素选择器0,0,0,1
类选择器,伪类选择器0,0,1,0
ID选择器0,1,0,0
行内选择器 style=“ ”1,0,0,0
!important 重要的∞无穷大

(从上至下,权重依次增大)

1.类选择器与元素选择器

2.类选择器、元素选择器与id选择器

 3.类选择器、元素选择器、id选择器与行内样式style

 3.类选择器、元素选择器、id选择器、行内样式style与!important

代码: 

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS优先级</title><style>.test {color: red;}div {color: pink !important;}#demo {color: green;}</style>
</head><body><div class="test" id="demo" style="color: purple">你笑起来真好看</div>
</body></html>

注意点: 

  1. 权重是有4组数字组成,但是不会有进位。
  2. 可以理解为类选择器永远大于元素选择器,id选择器永远大于类选择器。
  3. 等级判断从左到右,如果某一位数值相同,则判断下一位数值。 
  4. 可以简单记忆法: 通配符和继承权重为0,标签选择器为1,类(伪类)选择器为10,id选择器100,行内样式表1000,!important无穷大。 
  5. 继承的权重是0,如果该元素没有直接选中,不管父元素权重多高,子元素得到的权
    重都是0。

 

代码: 

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS权重注意点t</title>
</head>
<style>/* 父亲的权重是 100  */#father {color: red !important;}/* p继承的权重为 0 *//* 所以以后我们看标签到底执行那个样式,就先看这个标签有么有直接被选出来 */p {color: pink;}body {color: red;}/* a链接浏览器默认制定了一个样式 蓝色的 有下划线  a {color: blue;}*/a {color: green;}
</style><body><div id="father"><p>你还是很好看</p></div><a href="#">我是单独的样式</a>
</body></html>

权重叠加:

如果是复合选择器,则会有权重叠加,需要计算权重。

注意:权重虽然会叠加,但不会进位) 

例子:

·div ul  li→ 0,0,0,3

.nav ul li→ 0,0,1,2

 a:hover→ 0,0,1,1

.nav a→ 0,0,1,1

小练习

需求把第一个小li 颜色改为 粉色加粗。

代码: 

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS权重练习2</title><style>/* .nav li  权重是 11 */.nav li {color: red;}/* 需求把第一个小li 颜色改为 粉色加粗 ? *//* .pink  权重是 10    .nav .pink  20  */.nav .pink {color: pink;font-weight: 700;}</style>
</head>
<body><ul class="nav"><li class="pink">夜雨寄北</li><li>君问归期未有期</li><li>巴山夜雨涨秋池</li><li>何当共剪西窗烛</li><li>却话巴山夜雨时</li></ul>
</body>
</html>

(今日分享暂时到此为止啦!为不断努力的自己鼓鼓掌吧。今日文案分享:快也好,慢也好,各按其时,成为美好。) 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/630795.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据赋能(61)——要求:数据管理部门职责

“要求&#xff1a;数据管理部门职责”是作为标准的参考内容编写的。 数据管理部门职责在于以数据资源为核心&#xff0c;将原始数据转化为可被业务部门与数据服务部门有效利用的数据资源&#xff0c;以支持业务赋能的实现。 数据管理要确保数据的完整性、准确性与一致性&…

管道流设计模式结合业务

文章目录 流程图代码实现pomcontextEventContextBizTypeAbstractEventContext filterEventFilterAbstractEventFilterEventFilterChainFilterChainPipelineDefaultEventFilterChain selectorFilterSelectorDefaultFilterSelector 调用代码PipelineApplicationcontrollerentitys…

MySql安装(Linux)

一、清除原来的mysql环境 在前期建议使用root用户来进行操作&#xff0c;使用 su -来切换成root用户&#xff0c;但是如果老是提示认证失败&#xff0c;那么有可能我们的root密码并没有被设置&#xff0c; 我们可以先设置root的密码 sudo passwd root 然后就可以切换了。 …

遥感图像分割 | 基于一种类似UNet的Transformer算法实现遥感城市场景图像的语义分割_适用于卫星图像+航空图像+无人机图像

项目应用场景 面向遥感城市场景图像语义分割场景&#xff0c;项目采用类似 UNet 的 Transformer 深度学习算法来实现&#xff0c;项目适用于卫星图像、航空图像、无人机图像等。 项目效果 项目细节 > 具体参见项目 README.md (1) 安装依赖 conda create -n airs python3.8…

neo4j使用详解(终章、neo4j的java driver使用模板及工具类——<可用于生产>)

Neo4j系列导航: neo4j安装及简单实践 cypher语法基础 cypher插入语法 cypher插入语法 cypher查询语法 cypher通用语法 cypher函数语法 neo4j索引及调优 neo4j java Driver等更多 1. 简介 本文主要是java使用neo4j driver操作neo4j的模板项目及非常有用的工具类,主要包括: 图…

python中对列表的复制操作(浅拷贝与深拷贝)

python中对列表的复制操作用的比较广泛&#xff0c;之前写过一篇博客Python&#xff1a;复制列表&#xff0c;禁止函数修改列表&#xff08;副本&#xff0c;切片表示法[:]&#xff09;详细讲述了python中的 [:] 操作&#xff0c;但是 [:] 操作仅仅只是浅拷贝&#xff0c;具有很…

C++:深入理解operator new/operator delete

动态内存管理 1.语法层面1.基本语法注意点 2.new/delete和malloc/free的区别3.operator new和operator delete函数&#xff08;底层重点&#xff09;1.operator new/delete原理2.图解1.new/new[]2.delete/delete[] 3.new[n]和delete[] 4.定位new1.定义2.使用格式 1.语法层面 1…

JVM虚拟机(十)Java内存泄漏的排查思路

目录 一、可能产生内存泄露的地方二、复现堆内存泄漏三、如何排查堆内存问题&#xff1f;3.1 获取对内存快照 dump3.2 使用 Visual VM 去分析 dump 文件3.3 定位内存溢出问题 一、可能产生内存泄露的地方 在进行排查 Java 的内存泄漏问题之前&#xff0c;首先我们要知道哪里可…

Vue接收接口返回的mp3格式数据并支持在页面播放音频

一、背景简介 在实际工作中需要开发一个转音频工具&#xff0c;并且能够在平台页面点击播放按钮播放音频 二、相关知识介绍 2.1 JS内置对象Blob Blob对象通常用于处理大量的二进制数据&#xff0c;可以读取/写入/操作文件、音视频等二进制数据流。Blob表示了一段不可变的二…

AI热潮下,公链基础设施赛道都有哪些变化?

最近在一级市场&#xff0c;最火热的赛道无疑是AI&#xff0c;其次是BTC&#xff0c;每天聊的项目80%都集中在这两个赛道&#xff0c;我个人最多的时候一天可以聊5&#xff0c;6个AI项目。 可以预见的是AI泡沫会在明后年达到顶峰&#xff0c;随着数以百计的AI新项目上线&#…

【EI会议征稿通知】2024年图像处理、机器学习与模式识别国际学术会议(IPMLP 2024)

2024年图像处理、机器学习与模式识别国际学术会议&#xff08;IPMLP 2024) 2024 International Conference on Image Processing, Machine Learning and Pattern Recognition 重要信息 大会官网&#xff1a;www.ipmlp.net&#xff08;点击参会/投稿/了解会议详情&#xff09;…

政安晨:【Keras机器学习示例演绎】(一)—— 利用类 U-Net 架构进行图像分割

目录 下载数据 准备输入图像的路径和目标分割掩码 一幅输入图像和相应的分割掩码是什么样子的&#xff1f; 准备数据集&#xff0c;以加载和矢量化成批数据 准备 U-Net Xception 风格模型 预留验证分割 训练模型 可视化预测 政安晨的个人主页&#xff1a;政安晨 欢迎 &…