搜索
首页web前端css教程如何使用 CSS 指定类的顺序?

如何使用 CSS 指定类的顺序?

层叠样式表 (CSS) 是 Web 开发的一个强大组件,它使开发人员能够确定其网站的视觉外观。在 CSS 中,类用作选择器,使我们能够将多种特定样式应用于元素。您还可以对特定元素使用多个类。

但是,当您将多个类应用于一个元素时,有必要知道如何指定这些类的呈现顺序,以避免出现差异和意外结果。在本文中,我们将讨论在 CSS 中指定类顺序的不同方法,以及有助于确定优先级的特异性和级联规则的重要性。

CSS 中的类是什么?

在 CSS 中,类是用于将特定样式集应用于 HTML 元素的选择器。它们是强大的工具,使我们能够将元素分组在一起并保持网页上多个元素的一致性。它允许我们在大型网站的许多元素中重用 CSS 样式。

对一个元素使用多个类

如果您在 CSS 中定义了一组类,则可以将它们组合用于特定元素,以使其独特且有吸引力。但是,您必须指定类的顺序,以便编译器顺利运行代码并根据您的需要提供输出。这是通过级联特异性规则来完成的。

我们在 CSS 文件中定义类的顺序用于确定在将多个类应用于元素时它们的优先级。这是因为 CSS 是级联,这意味着编译器从最后到顶部从右到左读取它。因此,CSS 代码中最后提到的那个获得优先级。让我们通过一个示例更好地理解这一点。

示例

假设您在 CSS 文件中定义了两个类。

<html>
<head>
   <style>
      .class1 {
         margin: 10px;
         padding: 1px;
         text-align: center;
         font-size: 18px;
         color: red;
         letter-spacing: 1px;
      }
      .class2 {
         margin: 12px;
         padding: 5px;
         color: blue;
         font-size: 20px;
         font-family: Georgia;
         letter-spacing: 1px;
      }
      h1 {
         text-align: center;
      }
   </style>
</head> 
<body>   
   <h1 id="CSS-Classes"> CSS Classes </h1>
   <div class="class1"> Here, we have applied class1 to the div element. </div>
   <div class="class2"> Here, we have applied class2 to the div element. </div>
   <div class="class1 class2"> This is an example. Here, we will apply both classes to the div element. </div>
</body>  
</html>

由于在 CSS 代码中 .class2 是在 .class1 之后声明的,因此 class2 具有优先级。因此,当我们将 class1class2 应用于 div 元素时,div 元素的样式主要根据 class2 进行设计。

但是,您可以看到 class2 中未提及但 class1 中存在的属性应用于 div 元素。就像class1中提到了text-align: center,但class2中没有提到。但最后一个 div 元素仍然居中对齐。这是因为 class1 中唯一的属性将按原样应用于元素,但是,对于两个类中相同的属性,编译器使用级联规则来渲染它们。

类的顺序

用 HTML 编写的类的顺序并不决定优先级。考虑以下示例

示例

假设您定义了两个类似于上面示例的类。但是,您已经更改了 HTML 代码中类的顺序。您认为结果会怎样?会和之前的有所不同吗?让我们看看。

<html>
<head>
   <style>
      .class1 {
         margin: 10px;
         padding: 1px;
         text-align: center;
         font-size: 18px;
         color: red;
         letter-spacing: 1px;
      }
      .class2 {
         margin: 12px;
         padding: 5px;
         color: blue;
         font-size: 20px;
         font-family: Georgia;
         letter-spacing: 1px;
      }
      h1 {
         text-align: center;
      }
   </style>
</head> 
<body>   
   <h1 id="CSS-Classes"> CSS Classes </h1>
   <div class="class1 class2"> This is an example. Here, we will apply first class1 and then class2 to the div element. </div>
   <div class="class2 class1"> This is an example. Here, we will apply first class2 and then class1 to the div element. </div>
</body>  
</html>

如您所见,结果没有变化。样式将仅根据 CSS 中提到的类的顺序应用。

CSS 中!重要规则的使用

在 CSS 中,!important 规则使开发人员能够覆盖样式的级联顺序,并确保所需的特定样式获得最高优先级。

语法

selector{
   property: value !important;
}

如果您在 CSS 属性旁边使用 !important 关键字,则编译器将确保将其应用于该元素,无论样式的任何特定顺序如何。让我们看一个例子。

输入

 Original Linked List: 1 -> 2 -> 3 -> 4 -> 5 -> null

示例

在以下示例中,由于 b 位于 a 之前,因此,将根据最后一个 div 元素的 b 应用样式。但是,文本的颜色按照类“a”中的写入方式应用,这意味着文本的颜色为红色。这是因为我们在 “a”类中的 color 属性使用了 !important 关键字。

<html>
<head>
   <style>
      * {
         margin: 10px;
         padding: 2px;
      }
      .a {
         color: red !important;
         letter-spacing: 1px;
         text-shadow: 2px 2px 2px grey;
         font-size: 16px;
         font-family: Calibri;
      }
      .b {
         color: blue;
         letter-spacing: 1px;
         font-size: 20px;
         font-family: Georgia;
      }
   </style>
</head> 
<body>   
   <h1 id="Important-Rule"> !Important Rule </h1>
   <div class="a"> Here, we have applied only class "a" to the div element. </div>
   <div class="b"> Here, we have applied only class "b" to the div element. </div>
   <div class="a b"> Here, we have applied both the classes to the div element. </div>
</body>  
</html>

结论

在本文中,我们讨论了级联和特异性规则,用于在将多个类应用于特定元素时指定 CSS 中类的顺序。我们还讨论了用于覆盖任何特异性顺序的!important规则。

以上是如何使用 CSS 指定类的顺序?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:tutorialspoint。如有侵权,请联系admin@php.cn删除
丢失的CSS技巧cohost.org丢失的CSS技巧cohost.orgApr 25, 2025 am 09:51 AM

在这篇文章中,布莱克·莫里(Blackle Mori)向您展示了一些骇客,同时试图推动同位HTML支持的极限。如果您敢于使用这些,以免您也被标记为CSS罪犯。

光标的下一个CSS样式光标的下一个CSS样式Apr 23, 2025 am 11:04 AM

具有CSS的自定义光标很棒,但是我们可以将JavaScript提升到一个新的水平。使用JavaScript,我们可以在光标状态之间过渡,将动态文本放置在光标中,应用复杂的动画并应用过滤器。

世界碰撞:使用样式查询的钥匙帧碰撞检测世界碰撞:使用样式查询的钥匙帧碰撞检测Apr 23, 2025 am 10:42 AM

互动CSS动画和元素相互启动的元素在2025年似乎更合理。虽然不需要在CSS中实施乒乓球,但CSS的灵活性和力量的增加,可以怀疑Lee&Aver Lee&Aver Lee有一天将是一场

使用CSS背景过滤器进行UI效果使用CSS背景过滤器进行UI效果Apr 23, 2025 am 10:20 AM

有关利用CSS背景滤波器属性来样式用户界面的提示和技巧。您将学习如何在多个元素之间进行背景过滤器,并将它们与其他CSS图形效果集成在一起以创建精心设计的设计。

微笑吗?微笑吗?Apr 23, 2025 am 09:57 AM

好吧,事实证明,SVG的内置动画功能从未按计划进行弃用。当然,CSS和JavaScript具有承载负载的能力,但是很高兴知道Smil并没有像以前那样死在水中

'漂亮”在情人眼中'漂亮”在情人眼中Apr 23, 2025 am 09:40 AM

是的,让#039;跳上文字包装:Safari Technology Preview In Pretty Landing!但是请注意,它与在铬浏览器中的工作方式不同。

CSS-tricks编年史XLIIICSS-tricks编年史XLIIIApr 23, 2025 am 09:35 AM

此CSS-tricks更新了,重点介绍了年鉴,最近的播客出现,新的CSS计数器指南以及增加了几位新作者,这些新作者贡献了有价值的内容。

tailwind的@Apply功能比听起来更好tailwind的@Apply功能比听起来更好Apr 23, 2025 am 09:23 AM

在大多数情况下,人们展示了@Apply的@Apply功能,其中包括Tailwind的单个property实用程序之一(会改变单个CSS声明)。当以这种方式展示时,@Apply听起来似乎很有希望。如此明显

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!