当前位置: 首页 > news >正文

【前端基础】11、CSS的属性特性(继承、层叠、元素类型、隐藏元素的四种方式)

一、CSS属性的继承

CSS某些属性有继承性:

  • 如果一个属性具备继承性,元素A设置之后,这个元素A的后代元素都可以继承这个属性。
  • 元素A的后代元素如果设置相同的属性,则优先使用自身设置的内容(不管继承过来的属性权重有多高。)

在这里插入图片描述
在这里插入图片描述

1.1、CSS有那些属性可以继承?

有继承性的属性

在这里插入图片描述

另外,从浏览器的F12中看到, 有inherited from说明的就是说:属性继承于哪个元素。
在这里插入图片描述

1.2、对于有数值的继承,继承过来的是计算值

在这里插入图片描述

1.3、强制继承

在这里插入图片描述
在这里插入图片描述

如果强行让内部元素继承一个没有继承性的属性。就是用以下方法:
在这里插入图片描述

在这里插入图片描述

二、CSS属性的层叠

  • 同一个元素,相同的属性可以通过不同的选择器进行多次设置。
  • 这时候属性就会被一层层覆盖上去。
  • 但是最终只会有一个属性生效。
    在这里插入图片描述
    结果只有一个生效:
    在这里插入图片描述

2.1、多个属性覆盖,到底哪个会生效?

  1. 选择器权重,权重大的生效,根据权重判断出优先级。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  2. 先后顺序。权重相同,后设置的生效。

在这里插入图片描述

三、HTML元素的类型(行内级、块级)

为了区分那些元素需要独占一行,哪些元素不需要独占一行,因此HTML将元素分为两类:

  1. 块级元素(block-level elements):独占父元素一行,(可以自定义宽度和高度。)
  2. 行内级元素(inline-level elements):多个行内级元素可以在父元素的同一行显示。(宽度和高度只能根据内容多少来自动改变。
    →准确说是:行内级非替换元素(不能替换内容的),不能设置宽度和高度,例如span
    →另外:行内级可替换元素(能替换内容的),能设置宽度和高度,例如img图片

3.1、如何通过CSS修改元素类型?

实际上,元素本身没有块级元素和行内级元素的区分的,之所以有,是因为浏览器给设置的display属性。

  • 注意:浏览器看到有 user agent的,都是浏览器给设置的。

在这里插入图片描述

所以想修改元素类型,那就是:

利用浏览器的层叠特性,手动设置display属性,从而覆盖掉浏览器设置的display属性。

例子:
在这里插入图片描述
在这里插入图片描述

可以看到浏览器的display被覆盖掉了。
在这里插入图片描述

3.2、display的四个属性

在这里插入图片描述

  1. 块级元素(block
    独占父元素一行,(可以自定义宽度和高度。)
  2. 行内级元素(inline
    多个行内级元素可以在父元素的同一行显示。(宽度和高度只能根据内容多少来自动改变。
    →准确说是:行内级非替换元素(不能替换内容的),不能设置宽度和高度,例如span
    →另外:行内级可替换元素(能替换内容的),能设置宽度和高度,例如img
  3. 行内级元素- 块级元素(inline-block
    也可以称为:行内的块级元素。
    利用场景:某个元素,既要显示在一行,还能设置高度宽度。
    在这里插入图片描述
    在这里插入图片描述

总结:
在这里插入图片描述

四、HTML元素隐藏的四个方法

4.1、display设置为none

  • 元素不显示出来。
  • 不占位置,也没有任何空间。就不存在一样

在这里插入图片描述
在这里插入图片描述

4.2、visibility设置为hidden

  • 默认:visible。元素可见
  • 设置为hidden:元素不可见,但是会占据这个元素应该占用的空间。

在这里插入图片描述
在这里插入图片描述

4.3、rgba设置颜色,将a的值设置为0

  • rgbaa设置的是alpha值,可以设置透明度,不影响子元素

图片就很明显,没有改变透明度。
在这里插入图片描述

这就是隐藏的效果:不影响子元素。
在这里插入图片描述

4.4、opacity设置透明度,设置为0

  • 设置整个元素的透明度,会影响所有的子元素

在这里插入图片描述

在这里插入图片描述

4.5、rgbaopacity的效果对比

在这里插入图片描述

http://www.xdnf.cn/news/501949.html

相关文章:

  • 【笔记】正弦交流电路的特征量
  • MMDetection环境安装配置
  • 小蜗牛拨号助手用户使用手册
  • STM32中的DMA
  • Python自学笔记3 常见运算符
  • Redis 事务与管道:原理、区别与应用实践
  • 【JDBC】JDBC概述、历史版本及特征
  • 深入解析 React 的 useEffect:从入门到实战
  • (头歌作业)—6.1 葡萄酒评论分析报告(project)
  • DeepSeek超大模型的高效训练策略
  • 数据结构与算法——双向链表
  • 探秘 Java 字节缓冲流:解锁高效 IO 操作的进阶之路
  • Unity 人物模型学习笔记
  • MATLAB2025新功能
  • 开源项目实战学习之YOLO11:12.3 ultralytics-models-sam-encoders.py源码分析
  • gcc/g++常用参数
  • Go 语言的 GMP 模型
  • DeepSeek 赋能量子计算:突破与未来图景
  • Python时间处理全攻略:标准库与第三方库的实战应用
  • 如何 naive UI n-data-table 改变行移动光标背景色
  • Linux——shell编程
  • 线对板连接器的兼容性问题:为何老旧设计难以满足现代需求?
  • 前端-HTML元素
  • 匿名函数与闭包(Anonymous Functions and Closures)-《Go语言实战指南》原创
  • Java IO流进阶实战详解(含文件读写、拷贝、加密、字符集)
  • 【springcloud学习(dalston.sr1)】Config配置中心-ConfigServer端与Git通信(含源代码)(十三)
  • 5月17日
  • LLM-Based Agent综述及其框架学习(五)
  • 【网络编程】十一、四万字详解 TCP 协议
  • 虚拟主播肖像权保护,数字时代的法律博弈