re:从0开始的CSS学习之路 3. CSS三大特性

0. 写在前面

很多的学习其实并不知道在学什么,学一个新东西学着学着就变成了抄代码,背概念。把看视频学习变成了一个赶进度的任务,到头来只学到了一些皮毛。
在这里插入图片描述

文章目录

  • 0. 写在前面
  • 1. CSS三大特性——层叠性
  • 2. CSS三大特性——优先级
  • 3. CSS三大特性——继承性

1. CSS三大特性——层叠性

层叠性:相同选择器(同等权重)对同一个元素设置样式时
不冲突的样式:样式都生效
冲突的样式:会根据“就近原则”,书写位置接近元素的样式会将位置远的样式覆盖
示例如下:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Three Characteristics - Stackability</title>.div1 {color: red;}.div1 {font-size: 50px;color: yellowgreen;}
</head><body><div class="div1">我是div1</div></body></html>

实际上层叠性就是说,最底下的样式会最优先生效,这并不难理解,实际上就和程序的执行顺序一样

2. CSS三大特性——优先级

优先级:(权重)不同选择器选择同一个元素,并且设置相同样式时,CSS会根据优先级选择使用样式。
选择器的权重:

	行内样式								1,0,0,0id选择器								0,1,0,0类、属性、伪类选择器					0,0,1,0标签选择器							0,0,0,1通配符、继承							0,0,0,0

注意:

  1. 权重由四位整数组成,权重高优先执行。
  2. 权重从左到右依次比较,如高位相同,则比较下一位
  3. 权重可以叠加,但是不会进位
  4. 选择器分组单独计算

示例如下:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Three Characteristics - priority</title>/* #d1 {color: yellowgreen;} *//* 0,0,0,1+0,0,1,0=0,0,1,1 */div[class="div1"] {color: orange;}/* 0,0,1,0+0,0,1,0=0,0,2,0 */.div1.div2 {color: red;}
</head><body><div class="div1" id="d1">我是div</div>
</body></html>

可以看到每一位的优先级都是独立计算的,而且不会进位
这里的属性选择器实际上是两部分组成:标签选择器+属性选择器,这也是在2. 选择器超长大合集中提到过的

3. CSS三大特性——继承性

继承性:一个元素的某些样式可以被后代元素继承
优点:合理使用继承性,可以简化代码
注意:

  1. 通常文本、字体相关样式可以继承。但是背景、布局相关的样式不会被继承。
  2. a 链接不能继承文本颜色与下划线
  3. h 标题标签不能继承字体大小

示例如下:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>three Characteristics - Inheritance</title>.father {color: red;background-color: #c7decc;}body {font-size: 20px;}
</head><body><div class="father">我是father<div class="son">我是son</div><span>我是孙子span</span><a href="#">超链接</a><h1>我是标题</h1></div></body></html>

可以看到father里面的标签继承了father的样式,father整个的继承了body的字体大小也就是font-size
也可以看到a不能继承字体的颜色,h不能继承字体的大小

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

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

相关文章

学习Spring的第十六天

AOP底层两种生成Proxy的方式 我来解释这两种方式 1 目标类有接口 , 调用JDK的动态代理实现 2 目标类没有接口 , 用Cglib实现 , 即生成目标类的子类 , 来实现动态代理 , 所以要求目标类不能时final修饰的 . (若有接口 , 也可用Cglib方式实现 , 需要手动配置<aop: config pr…

完全二叉树的结点个数

给你一棵 完全二叉树 的根节点 root &#xff0c;求出该树的节点个数。 完全二叉树 的定义如下&#xff1a;在完全二叉树中&#xff0c;除了最底层节点可能没填满外&#xff0c;其余每层节点数都达到最大值&#xff0c;并且最下面一层的节点都集中在该层最左边的若干位置。若最…

java SpringBoot2.7整合Elasticsearch(ES)7 带条件分页查询与不带条件分页查询演示讲解

上文 java SpringBoot2.7整合Elasticsearch(ES)7 进行文档增删查改 我们带着大家 整合了 Elasticsearch 对索引中的文档做了 各方面操作 然后 我们来说说 分页查询 这里 为了方便大家看 我加了五条数据进去 这里 我们仍然需要带个条件 这里 我们用name Mapper 接口 加一个这…

【Unity】Assets/Plugins/Android(/res、/assets等)文件夹作用

Assets/Plugins/Android&#xff1a;包含 Android 平台的插件文件&#xff0c;如 jar、aar、so 等。 Asets/Plugins/Android/assets&#xff1a;包含 Android 平台的资源文件&#xff0c;如图片、音频等。 相当于src/main/assets文件夹 Assets/Plugins/Android/res&#xff1a;…

双非本科准备秋招(18.2)—— 图解Monitor

对象头 普通对象&#xff1a; 数组对象&#xff1a; java中对象存储结构分为对象头&#xff08;Header&#xff09;、实例数据&#xff08;Instance Date&#xff09;和对齐填充&#xff08;Padding&#xff09;。 对象头存储着Mark Word和Klass Word&#xff0c;通过Klass Wo…

前端JavaScript篇之解释性语言和编译型语言的区别

目录 解释性语言和编译型语言的区别解释性语言编译型语言区别 解释性语言和编译型语言的区别 解释性语言&#xff08;Interpreted Language&#xff09;和编译型语言&#xff08;Compiled Language&#xff09;是两种常见的编程语言类型。 解释性语言 解释性语言是一种在运行…

复选框和单选按钮——WindowsForm系列教程

你好&#xff0c;这里是BIM的乐趣&#xff0c;我是九哥~ 很多程序的GUI中都有两个常见小部件&#xff1a;单选按钮和复选框。 这些是直观地向用户提供多种选择的方法。我敢肯定&#xff0c;你们都熟悉这些形式的输入&#xff0c;但复选框允许用户打开和关闭个别选项&#xff…

Verilog刷题笔记18

题目&#xff1a;An if statement usually creates a 2-to-1 multiplexer, selecting one input if the condition is true, and the other input if the condition is false. 解题&#xff1a; module top_module(input a,input b,input sel_b1,input sel_b2,output wire ou…

聚焦网络安全公司,看F5如何应对企业数字化挑战

应用无处不在的当下&#xff0c;从传统应用到现代应用再到边缘、多云、多中心的安全防护&#xff0c;安全已成为企业数字化转型中的首要挑战。有专家指出&#xff0c;目前网络安全市场已经是仅次于计算、存储、网络的第四大IT基础设施市场。那什么网络安全公司应该具有哪些能力…

vue3 使用defineAsyncComponent 动态加载组件

问题场景 在项目中使用静态加载组件基本能覆盖80%的场景了&#xff0c;如下图 但是我们在需要 循环生成一些的component 的时候或者在 开发ssr服务端渲染的页面 就会遇到有些组件以静态方式导入就会报错&#xff0c;导致进程失败&#xff0c;那么这时候就需要用到动态组件。那…

常用算法--C++

文章目录 一、谓词二、标准算法algorithm1、sort 排序算法第一种sort重载第二种sort重载 2、find_if 查找算法 一、谓词 概念: ●返回bool类型的仿函数称为谓词 ●如果operator()接受一个参数&#xff0c;那么叫做一元谓词 _InIt find_if(_InIt _First, const _InIt _Last, _…

第8节、双电机多段直线运动【51单片机+L298N步进电机系列教程】

↑↑↑点击上方【目录】&#xff0c;查看本系列全部文章 摘要&#xff1a;前面章节主要介绍了bresenham直线插值运动&#xff0c;本节内容介绍让两个电机完成连续的直线运动,目标是画一个正五角星 一、五角星图介绍 五角星总共10条直线&#xff0c;10个顶点。设定左下角为原点…

入侵报警系统行业研究:智能化潮流助力市场维持正增长

侵报警系统intruder alarm system(IAS)利用传感器技术和电子信息技术探测并指示非法进入或试图非法进入设防区域(包括主观判断面临被劫持或遭抢劫或其他危急情况时&#xff0c;故意触发紧急报警装置)的行为&#xff0c;处理报警信息、发出报警信息的电子系统或网络。 当入侵行为…

解析与模拟常用字符串函数strcpy,strcat,strcmp,strstr(一)

今天也是去学习了一波字符串函数&#xff0c;想着也为了加深记忆&#xff0c;所以写一下这篇博客。既帮助了我也帮助了想学习字符串函数的各位。下面就开始今天的字符串函数的学习吧。 目录 strcpy与strncpy strcat与strncat strcmpy strstr strcpy与strncpy 在 C 语言中&…

docker进阶问题一

一、如何使用Docker的容器多阶段构建功能&#xff1f; Docker的多阶段构建&#xff08;Multi-stage Build&#xff09;功能允许在一个Dockerfile中使用多个FROM指令&#xff0c;每个FROM指令都可以使用不同的基础镜像&#xff0c;并且可以选择性地将前面阶段的文件复制到后续阶…

哪些洗地机比较好?家用洗地机选购攻略

洗地机集合了拖把跟吸尘器的功能&#xff0c;面对地面上的水渍、油污脏东西可以快速的清洁干净。从去年开始洗地机领域的竞争就变得异常激烈。各大厂家纷纷推出各自的主打型号&#xff0c;有的注重续航&#xff0c;有的突出清洁效能&#xff0c;还有的专注于性价比。相较于前几…

谷歌seo搜索引擎优化教程有吗?

教程&#xff0c;教学&#xff0c;指南&#xff0c;这些东西哪里都有&#xff0c;尤其是关于seo相关方面的&#xff0c;这些可以说到处都是&#xff0c;能把谷歌seo这个关键词做上去的&#xff0c;可以说就是实力的证明了&#xff0c;在这里我们说一个无论是老手还是新手都应该…

window开机启动

Windows设置exe或者bat文件开机启动的几种方法汇总_开机启动bat-CSDN博客 这个写的不错&#xff01;好几种方法&#xff01;

【知识图谱+大模型的紧耦合新范式】Think-on-Graph:解决大模型在医疗、法律、金融等垂直领域的幻觉

Think-on-Graph&#xff1a;解决大模型在医疗、法律、金融等垂直领域的幻觉 Think-on-Graph 原理ToG 算法步骤&#xff1a;想想再查&#xff0c;查查再想实验结果 论文&#xff1a;https://arxiv.org/abs/2307.07697 代码&#xff1a;https://github.com/IDEA-FinAI/ToG Think…

算法刷题day06

目录 引言一、移动距离二、日期问题三、航班时间四、外卖店优先级五、逆序对的数量六、总结 引言 今天是刷题的第六天的看看之前刷过的题基本快刷的差不多了&#xff0c;然后就开始刷一写新的题了。今天搞得是模拟和枚举和归并排序&#xff0c;关于这个归并排序我才感受到&…