Home > Article > Web Front-end > A brief discussion on CSS pseudo-classes and pseudo-elements_html/css_WEB-ITnose
This article shows you the pseudo-classes and pseudo-elements of CSS. The introduction is very comprehensive and is recommended here for your reference.
Pseudo-class
The pseudo-class selection element is based on the current state of the element, or the current characteristics of the element, rather than the element's id, class, Properties and other static flags. Since the state changes dynamically, when an element reaches a specific state, it may get a pseudo-class style; when the state changes, it will lose this style. It can be seen from this that its function is somewhat similar to that of class, but it is based on abstraction outside of the document, so it is called a pseudo class.
Pseudo-class selector: The selector has been defined in CSS and cannot be named casually
:link
The pseudo-class will be applied to links that have not been visited. Mutually exclusive with :visited.
:hover
Thepseudo-class will be applied to the element that the mouse pointer is hovering over.
:active
Thepseudo-class will be applied to activated elements, such as clicked links, pressed buttons, etc.
:visited
pseudo-class will be applied to links that have been visited, mutually exclusive with :link.
:focus
Thepseudo-class will be applied to elements that have keyboard input focus.
:first-child
Thepseudo-class will be applied when the element first appears on the page.
:lang
Thepseudo-class will be applied to elements with the specified lang.
:root() selector
matches the root element of the document where element E is located. In an HTML document, the root element is always . The ":root" selector is equivalent to the element
: not() selector
is called a negative selector, which is exactly the same as the :not selector in jQuery, and can be selected except All elements except a certain element.
:empty() selector
means empty. Used to select elements without any content. No content here means no content at all, even a space.
:target() selector
Specifies a style for a target element on the page (the id of the element is used as a hyperlink in the page). This style is only used when the user clicks the page The hyperlink in and works after jumping to the target element
:nth-child()
Select one or more specific child elements of an element.
:nth-last-child()
Select a specific element starting from the last child element of a parent element.
Pseudo-element
Unlike pseudo-classes that target elements in a special state, pseudo-elements operate on specific content in the element, and the level it operates on is smaller than the pseudo-element. Pseudo-classes are one level deeper and therefore much less dynamic than pseudo-classes. In fact, the purpose of designing pseudo-elements is to select the first letter (letter) and first line of element content, and select the front or back of certain content, which is something that ordinary selectors cannot do. The content it controls is actually the same as the element, but it is only an abstraction based on the element and does not exist in the document, so it is called a pseudo element.
Pseudo element selector: It is not a selector used for real elements, but a selector used for pseudo elements that have been defined in CSS.
You have seen the pseudo-elements in CSS before: :first-line,:first-letter,:before,:after;
Then in CSS3, he made certain adjustments to the pseudo-elements. On the basis of the previous one, a ":" was added, which now becomes "::first-letter,::first-line,::before,::after". In addition, he also added a "::selection", Two "::" and one ":" are mainly used to distinguish pseudo-classes and pseudo-elements in CSS3. So far, both methods are accepted, which means that no matter which writing method is used, the effect will be They are all the same, just a different writing format.
:first-letter
Thepseudo-element’s style will be applied to the first letter of the element’s text.
:first-line
Thepseudo-element’s style will be applied to the first line of the element’s text.
:before
Adds new content at the front of the element's content.
:after
Add new content at the end of the element content.
::first-line
Select the first line of the element, for example, to change the style of the first line of text in each paragraph, we can use this
: :before and ::after
are mainly used to insert content in front or behind the element. These two commonly used "content" are used together. The most common thing I have seen is to clear the floating
::selection
Used to change the default effect of selecting Chinese when browsing web pages
Reprinted from http://www.jb51.net/css/ 255744.html