为什么CSS可以使用伪元素

为什么CSS可以使用伪元素

作为前端开发者,您应该熟悉CSS伪元素,包括它们的功能以及各种展示和结构应用。基本的CSS选择器及其众多属性令人愉悦,但理解伪类和伪元素是成为CSS专家的下一步。

除了CSS伪元素,还有一些HTML元素通常被称为伪元素。它们有时候被CSS使用,以便方便处理并允许开发人员在网页中创建自定义元素。然而,它们没有标准化,因此不能在全局范围内使用。

在本文中,我们将讨论为什么CSS可以使用伪元素?文章首先解释了什么是伪元素,为什么我们使用它们,它们如何工作以及伪元素的许多其他基本方面。

什么是伪元素

在HTML文档中未定义的HTML元素被称为伪元素。可以创建虚伪元素。您可以为元素选择任何名称,但不建议这样做。HTML允许开发人员在网页中使用自定义元素。该元素将在您的页面中平稳运行。

示例

请查看以下示例,了解我们如何在HTML文档中使用伪元素。

<!DOCTYPE html>
<html>
<head>
   <title> Fake Elements </title>
   <style>
      *{
         background-color: grey;
         margin: 5px;
         letter-spacing: 1px;
      }
      .para{
         font-family: cursive;
      }
   </style>
</head>
<body>
   <section>
      <heading> Programming Languages </heading>
      <p class= "para"> To communicate with computers, programmers (developers) use a programming language, which is a computer language. It is a set of instructions written in a specific language (such as C, C++, Java, or Python), built to do a certain task. </p>
      <example> Some of the most popular programming languages are: </example> <br>
      <p>
         <ol>
            <li> <h1> C/C++ </h1> </li>
            <li> <h1> Java </h1> </li>
            <li id= "demo"> <h1> Python </h1> </li>
            <li> <h1> JavaScript </h1> </li>
            <li> <h1> PHP </h1> </li>
         </ol>
      </p>
   </section>
</body>
</html>

如上面的示例中所示,我们使用了自己的元素,如<heading><example>。代码顺利执行并显示了文本。然而,我们需要根据样式来定义它们。例如,如果我们使用HTML认可的元素(如h1)而不是<heading>,文本的字体大小会自动变大。对于伪元素,我们需要使用CSS指定字体大小。

示例

在这个示例中,我们为伪元素<heading><example>声明了一些CSS属性。

<!DOCTYPE html>
<html>
<head>
   <title> Fake Elements </title>
   <style>
      *{
         background-color: yellow;
         margin: 5px;
         letter-spacing: 1px;
      }
      heading{
         color: black;
         text-decoration: underline;
         text-shadow: 4px 4px 4px grey;
         font-size: 28px;
      }
      .para{
         font-family: cursive;
      }
      example{
         color: red;
         font-weight: 900;
      }
   </style>
</head>
<body>
   <section>
      <heading> <h1 class= "head"> Programming Languages </h1> </heading>
      <p class= "para"> Programmers (developers) utilise a programming language, which is a computer language, to communicate with computers. It is a set of guidelines created in any particular language (C, C++, Java, Python), developed to carry out a certain task. </p>
      <example> Some of the most popular programming languages are: </example> <br>
      <p>
         <ol>
            <li> <h1> C/C++ </h1> </li>
            <li> <h1> Java </h1> </li>
            <li id= "demo"> <h1> Python </h1> </li>
            <li> <h1> JavaScript </h1> </li>
            <li> <h1> PHP </h1> </li>
         </ol>
      </p>
   </section>
</body>
</html>

我们已经对伪元素添加了CSS样式。代码执行顺利,样式没有任何问题。问题是,这些伪元素如何在HTML文档中工作。

答案是:随着HTML功能的不断进步,大多数现代浏览器已经兼容了许多变化或添加的功能。因此,未被识别的元素被直接解析到DOM树中。然而,它们不会呈现任何功能或特性。

为什么我们不应该使用伪元素

尽管伪元素在网页中正常工作,但强烈建议不要在HTML文档中使用伪元素。以下是一些不应该使用伪元素的原因:

  • HTML规范不支持和识别这些伪元素。

  • 这些元素没有指定的功能。就像<header>中的文本具有预定义的字体大小一样,伪元素无法提供对这些功能的访问。

  • 它们可能妨碍拥有与伪元素相同名称的未来标准元素的功能(如果存在)。

  • 随着HTML版本的快速修改,存在可能在DOM中存在最适合特定功能的特定标准元素。

  • 这些标签可能在不同浏览器中呈现兼容性问题。此外,浏览器会更快地呈现标准元素。因此,您的网页将更加流畅。

  • 标准HTML元素提供了各种优势,如SEO(搜索引擎优化)和速度。它们受到Google等流行浏览器的青睐。

  • 使用伪元素显示缺乏专业精神(对于某些开发人员而言)。标准元素易于维护。此外,它允许进一步的修改(如有需要)。

  • 使用标准HTML元素可以使调试更加容易。这是因为可以通过调试工具轻松访问标准元素。

结论

在HTML文档中可以创建自己的元素。然而,它们没有任何附加的语义或功能。此外,这些元素无法被所有开发人员全局理解或使用。因此,最好使用标准HTML元素,这样可以获得比伪元素更多的优势。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

CSS 精选笔记