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.mzph.cn/pingmian/117.shtml

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

相关文章

5.最长回文子串

题目&#xff1a; 给你一个字符串 s&#xff0c;找到 s 中最长的回文子串。 如果字符串的反序与原始字符串相同&#xff0c;则该字符串称为回文字符串。 示例 1&#xff1a; 输入&#xff1a;s "babad" 输出&#xff1a;"bab" 解释&#xff1a;"…

IDEA中SVN 的使用

文章目录 前言一、svn安装二、IDEA集成SVN总结 前言 svn可以老牌的代码仓库了 说实话svn还是和git无法相比的,毕竟git有本地仓库的概念,可以很好的处理冲突,然而svn是没有本地仓库的概念的,所以只能拉取别人的代码,然后处理冲突后,才能提交代码; 由于最近的工作换成了用svn仓…

2024香港Web3嘉年华:Web3的两大支柱是区块链和AI

2024香港Web3嘉年华&#xff1a;Web3的两大支柱是区块链和AI 4月9日&#xff0c;香港Web3嘉年华落下帷幕圆满收官。这场盛会延续了往年的火爆&#xff0c;保留了社交和打卡元素。大批加密货币从业者齐聚一堂&#xff0c;在多方碰撞中&#xff0c;共同探讨香港与加密的未来之路…

面试 Java 基础八股文十问十答第二十五期

面试 Java 基础八股文十问十答第二十五期 作者&#xff1a;程序员小白条&#xff0c;个人博客 相信看了本文后&#xff0c;对你的面试是有一定帮助的&#xff01;关注专栏后就能收到持续更新&#xff01; ⭐点赞⭐收藏⭐不迷路&#xff01;⭐ 1&#xff09;如何判断对象可以被…

三种空间数据的聚合算法

原始数据分布 给老外做的Demo&#xff0c;所以是英文界面。 原始数据分布情况如下&#xff1a; geojson文本内容&#xff1a; 三种方法基本原理 三种聚合算法来做一个例子&#xff08;500条记录&#xff09;。 方法1&#xff1a;按Ol默认方法进行聚类&#xff0c;使用Open…

IPC最新发行了新标准:IPC-A-610J, IPC-J-STD-001J, IPC-7711/21D, IPC-2221C, -2024年

2024年伊始&#xff0c;IPC又更新了一些新的标准&#xff0c;大家可以及时去更新了。 ** IPC-A-610J_EN 2024 TOC Acceptability of Electronic Assemblies ** 大家对这个标准都不陌生了吧&#xff0c;从事电子行业的技术人员&#xff0c;应该没有人不知道。 IPC-A-610J是…

可见光相机曝光方式

可见光摄影中的曝光方式主要包括两种&#xff1a;卷帘曝光和全局曝光。它们之间的区别在于曝光过程中传感器或胶片感光部分的工作方式不同&#xff0c;这直接影响到图像捕获的效果和特性。 卷帘曝光&#xff08;Rolling Shutter&#xff09;&#xff1a; 工作原理&#xff1a;在…

springboot mongodb 数据添加时更改‘_class‘字段

重写beanMappingMongoConverter 修改DefaultMongoTypeMapper /*** 更改默认的 MongoDB 映射转换器,更改_class字段** param factory MongoDB 工厂对象* param context MongoDB 映射上下文* param beanFactory springBean 工厂* return MongoDB 映射转换器*/Beanpublic…

Elasticsearch 创建自定义分析器(4)

一.自定义分析器 当内置分析器不能满足时&#xff0c;可以创建一个自定义分析器&#xff0c;自定义分析器(analyzer)由&#xff1a; 1)0或多个 charactcr filter 字符过滤器 2) 1个 tokenizer 分词器&#xff0c;将文本切分为分词 3)0或多个 token filter 令牌过滤器&#xff…

对一个全局变量进行多线程并发 -- 或者 ++ 操作是否是安全的??是否是原子的??

1.结论&#xff1a; 不是安全的&#xff0c;不是原子的 2.原因&#xff1a; 2.1 不是原子性的原因&#xff1a; 一个线程将一个全局变量--&#xff08;减减&#xff09;时候&#xff0c;需要以下几个步骤 第一步&#xff1a;将全局变量读到cpu的寄存器中&#xff0c; 第二步…

3D目标检测实用技巧(三)- 生成虚拟点

一、引言 本次参考的是VirConv生成虚拟点的方法&#xff1a; VirConv/tools/PENet at master hailanyi/VirConv GitHubVirtual Sparse Convolution for Multimodal 3D Object Detection - VirConv/tools/PENet at master hailanyi/VirConvhttps://github.com/hailanyi/Vir…

腾讯文档推出智能白板创新品类,自研开物引擎支持全端应用

4月18日&#xff0c;“腾讯文档&#xff0c;打开想象”2024产品发布会在线上举办。腾讯社交协作产品部总经理、腾讯文档负责人鄢贤卿在会上&#xff0c;正式发布智能白板创新品类、双核编辑“开物引擎”、云加端解决方案等产品矩阵。他表示&#xff0c;在自研文档品类和自研双核…

ctfshow web入门 SQl注入web171--web179

从这里开始SQl建议大家去看这篇文章学习一下先 MySQl web171 法一联合查询 题目 $sql "select username,password from user where username !flag and id ".$_GET[id]." limit 1;";爆数据库名 -1 union select 1,database(),3 -- 爆表名 -1 union s…

数据结构 - 栈

概述 计算机科学中,stack是一种线性的数据结构,只能在其一段添加和移除数据. 习惯来说,这一端称之为栈顶,另一端不能操作数据的称之为栈底,就如同生活中的一摞书 先提供一个接口: public interface Stack <E>{/*** 向栈顶压入元素* param value -- 待压入值* returns…

✌粤嵌—2024/4/18—旋转链表✌

代码实现&#xff1a; 方法一&#xff1a;在原链表中找到旋转之后的首尾&#xff0c;改变指向 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* rotateRight(struct ListNode *head, int k) {i…

线程安全问题的原因和解决方案

目录 原因分析 解决线程安全问题——加锁 synchroized&#xff08;&#xff09; 死锁 死锁的四个必要条件 线程安全是指多个线程同时访问共享资源时&#xff0c;不会产生不正确的结果。线程安全问题的主要原因是多个线程对共享数据进行读写操作时的并发性。这可能导致竞态…

GDB调试基础

一.调试环境 一般的GDB调试为本机环境下调试&#xff0c;如在一台Centos6的服务器上编写demo&#xff0c;那么gdb调试时只需要运行gdb工具并指定待调试文件即可开始调试&#xff1b; 如: [xxxcentos6]$ gdb a.out //…… This GDB was configured as "x86_64-redhat-l…

制作直通网线和交叉网线

制作直通网线和交叉网线 1. 网络直通线2. 网络交叉线References 双绞线的连接方法有两种&#xff1a;直通连接和交叉连接 。 直通连接是将双绞线的两端分别都依次按白橙、橙、白绿、蓝、白蓝、绿、白棕、棕色的顺序 (国际 EIA/TIA 568B 标准) 压入 RJ45 水晶头内。这种方法制作…

壁纸、软件、电子书、音乐资源、数据库资源,囤一囤

资源网站我真的有很多&#xff01;&#xff01;下面这十几个都是壁纸资源、软件资源、电子书资源、音乐资源、数据库资源等等&#xff0c;感兴趣的囤一囤&#xff01; 一、壁纸资源 1、PEXELS 网址&#xff1a; https://www.pexels.com/zh-cn/ 一个专门分享无版权图片的网站…

Windows突然蓝屏解决办法

Windows突然蓝屏&#xff0c;然后重复开机没有用&#xff0c;但是能进入bios系统&#xff0c;证明内存和磁盘没事&#xff0c;用大白菜制作了PE系统盘制作过程&#xff08;之前一直都是用官方镜像制作&#xff0c;但是发现用大白菜制作可以对系统之前的磁盘里面重要的信息拷贝到…