In the previous article "What is a hierarchical selector in CSS? how to use? ", we learned about 4 types of hierarchical selectors. Let's talk about pseudo-selectors. They provide more complex functions, but do not directly correspond to the elements that HTML documents should have. There are two main types of pseudo-selectors: pseudo-elements and pseudo-classes. Let’s first talk about pseudo-element selectors in detail.
Pseudo-element selector in CSS is to add keywords to the specified CSS selector. Used to describe the styling of a specific part of a specified element. [Recommended learning: css video tutorial]
Through pseudo-elements, developers can define styles for specific parts of the selected element without using the ID or class attributes of the element. For example, through pseudo-elements you can set the style of the first letter in a paragraph, or insert some content before or after the element, etc.
In CSS1 and CSS2, the use of pseudo-elements is the same as pseudo-classes, and a colon :
is connected to the selector. However, in CSS3, the use of single colon for pseudo elements was changed to double colon ::
to distinguish pseudo classes and pseudo elements. Therefore, it is recommended to use double colons instead of single colons when using pseudo-elements.
The syntax structure is as follows:
/* CSS3 语法 */ 选择器::伪元素 { 属性 : 属性值; } /* CSS2 过时语法 (仅用来支持 IE8) */ 选择器:伪元素 { 属性 : 属性值; }
should now use two colons, unless you are also compatible with IE8.
Note: Only one pseudo-element can be used in a selector, and the pseudo-element must follow the selector. According to the latest W3C specification, you should use double colon
::
instead of single colon:
when defining pseudo-elements to distinguish pseudo-classes and pseudo-elements. However, since the old version of the W3C specification did not make a special distinction, most browsers currently support both single colon and double colon methods to define pseudo-elements.
CSS provides a series of pseudo-elements, as shown in the following table:
Pseudo-elements | Example | Example description |
---|---|---|
::after | p::after | Insert content after each element |
::before | p::before | Insert content before each element |
::first-letter | p::first-letter | Matches the first letter of the content in each element |
::first-line | p::first-line | Matches the first line of content in each element |
p::selection | Match the part of the element selected by the user | |
input::placeholder | Match the placeholder attribute of each form input box (such as ) |
The above is the detailed content of CSS pseudo-selector learning pseudo-element selector analysis. For more information, please follow other related articles on the PHP Chinese website!