search
HomeWeb Front-endHTML Tutorialcss中的伪类和伪元素_html/css_WEB-ITnose

伪类

伪类与类相似,但又没有类附加标签上。伪类分为UI伪类和结构化伪类。

UI伪类

  • :link(将样式添加到未被访问的链接上)

  • :visted(将样式已添加到访问的链接上)

  • :hover(将样式添加到鼠标悬浮的元素上)

  • :active(将样式添加到被激活的元素上)

  • :focus(将样式添加到被选中的元素上)

结构化伪类

  • :first-child(将样式添加到第一个子元素上)

  • :last-child(将样式添加到最后一个子元素上)

伪元素

伪元素是在文档中若有实无的元素。

主要有以下几种

  • :first-letter(将样式添加到第一个字母)

  • :first-line(将样式添加到第一行)

  • :before(在某些元素前面插入某些内容)

  • :after(在某些元素后面插入某些内容)

看到:after,大家脑子里应该都能浮现出那个清除浮动的CSS的吧。没错,就是这个。

?

1

2

3

4

5

6

7

.clearfix:after {

     content : "." ;

     display : block ;

     height : 0 ;

     visibility : hidden ;

     clear : both ;

}


区别

仔细琢磨下它们的定义。

伪类的实现就好比给这个标签添加了一个虚拟的类。

举个栗子:

?

1

2

3

4

5

a:hover{

     font-size : 20px ;

     color : red

}

Hello,World

若不用伪类,实现同样的效果,需要这么做

?

1

2

3

4

5

.hover{

     font-size : 20px ;

     color : red

}

Hello,World

这么一对比,”伪类“就顾名思义了啊。


而伪元素则好比添加了一个新的标签。

?

1

2

3

4

5

p:first-letter{

     font-size : 20px ;

     color : red

}

Hello,World

若不用伪元素,实现同样的效果,需要这么做

?

1

2

3

4

5

.first-letter{

     font-size : 20px ;

     color : red

}

Hello,World


因此总结下区分的方法:现实相同效果是需要添加一个类还是一个元素标签


tips:

1.CSS3为了区别伪类和伪元素,明确使用单冒号来表示伪类,双冒号来表示伪元素。但为兼容性考虑,目前基本还是使用单冒号来表示。

2.搜索引擎不会搜索伪元素的信息。因此,不要通过伪元素添加你想让搜索引擎索引的重要内容




参考资料:

《CSS设计指南》

详解 CSS 属性 - 伪类和伪元素的区别


http://www.jb51.net/css/67317.html

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Difficulty in updating caching of official account web pages: How to avoid the old cache affecting the user experience after version update?Difficulty in updating caching of official account web pages: How to avoid the old cache affecting the user experience after version update?Mar 04, 2025 pm 12:32 PM

The official account web page update cache, this thing is simple and simple, and it is complicated enough to drink a pot of it. You worked hard to update the official account article, but the user still opened the old version. Who can bear the taste? In this article, let’s take a look at the twists and turns behind this and how to solve this problem gracefully. After reading it, you can easily deal with various caching problems, allowing your users to always experience the freshest content. Let’s talk about the basics first. To put it bluntly, in order to improve access speed, the browser or server stores some static resources (such as pictures, CSS, JS) or page content. Next time you access it, you can directly retrieve it from the cache without having to download it again, and it is naturally fast. But this thing is also a double-edged sword. The new version is online,

How do I use HTML5 form validation attributes to validate user input?How do I use HTML5 form validation attributes to validate user input?Mar 17, 2025 pm 12:27 PM

The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

What are the best practices for cross-browser compatibility in HTML5?What are the best practices for cross-browser compatibility in HTML5?Mar 17, 2025 pm 12:20 PM

Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

How to efficiently add stroke effects to PNG images on web pages?How to efficiently add stroke effects to PNG images on web pages?Mar 04, 2025 pm 02:39 PM

This article demonstrates efficient PNG border addition to webpages using CSS. It argues that CSS offers superior performance compared to JavaScript or libraries, detailing how to adjust border width, style, and color for subtle or prominent effect

What is the purpose of the <datalist> element?What is the purpose of the <datalist> element?Mar 21, 2025 pm 12:33 PM

The article discusses the HTML <datalist> element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

What is the purpose of the <meter> element?What is the purpose of the <meter> element?Mar 21, 2025 pm 12:35 PM

The article discusses the HTML <meter> element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates <meter> from <progress> and ex

How do I use the HTML5 <time> element to represent dates and times semantically?How do I use the HTML5 <time> element to represent dates and times semantically?Mar 12, 2025 pm 04:05 PM

This article explains the HTML5 <time> element for semantic date/time representation. It emphasizes the importance of the datetime attribute for machine readability (ISO 8601 format) alongside human-readable text, boosting accessibilit

What is the purpose of the <progress> element?What is the purpose of the <progress> element?Mar 21, 2025 pm 12:34 PM

The article discusses the HTML <progress> element, its purpose, styling, and differences from the <meter> element. The main focus is on using <progress> for task completion and <meter> for stati

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)