CSS 的 折叠性、继承性、优先级

这篇具有很好参考价值的文章主要介绍了CSS 的 折叠性、继承性、优先级。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

CSS 的 折叠性、继承性、优先级(权重)

1、折叠性(Collapsing)

折叠性是指当多个CSS属性应用到同一个元素上时,它们如何相互作用以确定最终的样式。当不同的规则决定同一个属性的值时,折叠性规定了哪个规则的值会被应用。

折叠性的规则如下:

  • 样式冲突,遵循的原则是就近原则,哪个样式离结构近,就执行哪个样式
  • 样式不冲突,不会层叠
<!DOCTYPE html>
<html>
<head>
  <style>
    p {
      color: red;
    }

    p {
      color: blue;
    }
  </style>
</head>
<body>
  <p>This is a paragraph.</p>
</body>
</html>

在这个示例中,两个p选择器都定义了不同的颜色属性,一个是红色,一个是蓝色。根据折叠性规则,后面的规则会覆盖前面的规则。因此,最终应用到段落的颜色将是蓝色。

2、继承性(Inheritance)

继承性是指某些CSS属性的值能够被其子元素继承。当一个元素的某个属性没有显式地定义时,它将从父元素继承该属性的值。

  • 例如,如果父元素的颜色属性设置为红色,子元素的颜色属性通常也会继承为红色,除非在子元素上显式地设置了不同的值。

  • 并非所有的CSS属性都具有继承性,只有特定的属性才会被继承。

  • 子元素可以继承父元素的样式(text-,front-,line-这些元素开头的可以继承,以及color属性)

  • 行高的继承性

<!DOCTYPE html>
<html>
<head>
  <style>
    .parent {
      font-size: 20px;
    }
  </style>
</head>
<body>
  <div class="parent">
    <p>This is a paragraph with inherited font size.</p>
  </div>
</body>
</html>

在上面的示例中,父元素的字体大小设置为20像素,子元素的字体大小将继承为20像素。

3、优先级(Specificity)

CSS中的优先级是用于确定哪个规则将应用到特定元素的机制。它基于不同选择器和声明之间的特定性和重要性。

选择器 选择器权重
继承或者* 0,0,0,0
元素选择器 0,0,0,1
类选择器,伪类选择器 0,0,1,0
ID选择器 0,1,0,0
行内样式 1,0,0,0
!important 无穷大

下面是CSS中优先级的一般规则:

  1. 内联样式(Inline Styles)优先级最高:
    内联样式是直接写在HTML元素的style属性中的样式规则。它们具有最高的优先级,将覆盖其他任何选择器定义的样式。
<p style="color: blue;">This is a paragraph with inline style.</p>
  1. ID选择器(ID Selectors)优先级第二:
    ID选择器使用HTML元素的id属性来选择元素,并具有较高的优先级。
<style>
#myElement {
  color: red;
}
</style>

<p id="myElement">This is a paragraph with ID selector.</p>
  1. 类选择器(Class Selectors)和属性选择器(Attribute Selectors)优先级第三:
    类选择器和属性选择器是通过类名和属性选择来选择元素的,它们的优先级相对较低。
<style>
.myClass {
  color: green;
}

[type="text"] {
  font-weight: bold;
}
</style>

<p class="myClass">This is a paragraph with class selector.</p>
<input type="text" value="Example" />
  1. 元素选择器(Element Selectors)和伪类选择器(Pseudo-Class Selectors)优先级第四:
    元素选择器是基于HTML元素名称来选择元素的,而伪类选择器是用于选择元素的特定状态或位置。
<style>
p {
  font-size: 18px;
}

a:hover {
  color: orange;
}
</style>

<p>This is a paragraph with element selector.</p>
<a href="#" class="myLink">Link</a>
  1. 通用选择器(Universal Selector)和伪元素选择器(Pseudo-Element Selectors)优先级最低:
    通用选择器选择所有元素,而伪元素选择器用于选择元素的特定部分。
<style>
* {
  margin: 0;
  padding: 0;
}

p::first-line {
  text-transform: uppercase;
}
</style>

<p>This is a paragraph with universal selector.</p>

注意文章来源地址https://www.toymoban.com/news/detail-550353.html

  • 权重是有4组数字组成,但是不会有进位
  • 等级判断从左向右,如果某一为数值相同,则判断下一位数值
  • 继承的权重为0,如果该元素没有直接选中,不管父元素权重多高,子元素得到的权重都是0
  • 权重叠加,如果是复合选择器,则会有权重叠加,需要计算权重(相加)。但是不会有进位
    • div ul li ----> 0,0,0,3
    • .nav ul li ----> 0.0.1.2

到了这里,关于CSS 的 折叠性、继承性、优先级的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 7 CSS选择器优先级

    7 选择器优先级 所谓CSS优先级,即是指CSS样式在浏览器中被解析的先后顺序。样式表中的特殊性描述了不同规则的相对权重。

    2024年02月12日
    浏览(39)
  • CSS三种样式表、样式表优先级、CSS选择器

    CSS,全称是:Cascading Style Sheets,层叠样式表,用于修饰HTML页面的。 CSS编写规则如下所示: CSS编写的规则分为两部分,分别是:选择器、声明块。 声明块,需要使用【{}】大括号包裹,括号里面使用【key: value;】的格式定义属性。 选择器,表示需要对哪个HTML标签添加CSS样式

    2024年02月09日
    浏览(44)
  • css选择器分类及优先级判断

    目录 选择器分类 全局选择器 元素选择器 类选择器 ID选择器 合并选择器 内联选择器  选择器的优先级 css语法规则由两个主要部分构成:选择器,以及一条或多条样式声明。 全局选择器:* 元素选择器:标签名称 类选择器:class属性名(.) ID选择器:id属性名(#) 内联选择

    2023年04月09日
    浏览(43)
  • CSS选择器和优先级权重

    标签选择器、伪元素选择器:1 类选择器、属性选择器、伪类选择器:10 id 选择器:100 内联样式:1000 选择器 格式 优先级权重 id选择器 #id 100 类选择器 .class 10 属性选择器 a[ref=“eee”] 10 伪类选择器 div:last-child 10 标签选择器 div 1 伪元素选择器 div:after 1 相邻兄弟选择器 h1+p

    2024年02月10日
    浏览(73)
  • CSS_三大特性下_优先级

    CSS_特性继承和层叠 - Bublly - 博客园 (cnblogs.com) CSS_特性继承和层叠 - Bublly - 博客园 (cnblogs.com) 1特性: 不同选择器具有不同的优先级,优先级高的选择器样式会覆盖优先级低选择器样式 2优先级公式: 继承通配符选择器标签选择器类选择器id选择器行内样式!important 3注意点:

    2024年02月08日
    浏览(60)
  • css中选择器的优先级

    CSS 的优先级是由选择器的 特指度(Specificity) 和 重要性(Importance) 决定的,以下是优先级规则: 特指度 : ID 选择器 (#id) : 每个ID选择器计为100。 类选择器 (.class)、属性选择器 ([attr]) 和伪类选择器 (:hover, :focus 等) : 每个此类选择器计为10。 元素选择器 (p, div, span 等)  和伪

    2024年02月22日
    浏览(52)
  • CSS 中的优先级规则是怎样的?

    前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一个系统而又亲切的学习平台。在这个

    2024年02月13日
    浏览(34)
  • CSS快速入门-选择器和优先级

    CSS是一种用于样式化网页的语言,全称为“层叠样式表”(Cascading Style Sheets)。 它可以控制网页中元素的外观和布局,例如颜色、字体、大小、边距、对齐等,让网页变得更加美观和易于阅读。 使用CSS可以将样式与网页内容分离开来,从而使网页结构更加清晰,减少HTML代码

    2023年04月22日
    浏览(55)
  • 前端面试题-(浏览器内核,CSS选择器优先级,盒子模型,CSS硬件加速,CSS扩展)

    内核 描述 Trident(IE内核) 主要用在window系统中的IE浏览器中,由微软研发并投入使用 Gecko(Firefox内核) 主要用于Firefox浏览器中,特点是代码完全公开,开发程度高 Webkit(Safari内核) 苹果产品中的safari浏览器使用的就是webkit内核,其特点是不受ie,firefox等内核的约束,比较安全。

    2024年01月25日
    浏览(74)
  • css学习3(三种样式表与样式控制优先级)

    1、外部样式表:当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 link 标签链接到样式表,也要放到head中。 2、外部样式表可以在任何文本编辑器中进行编辑。文件不能包

    2024年02月12日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包