What is the Difference Between Single and Double Colon in CSS?
Do you know what is the difference between single and double colon in CSS? Or did you know that there is a difference at all?
/* CSS3 syntax */
.css3::before { ... },
.css3::after { ... }
/* CSS2 syntax */
.css2:before { ... },
.css2:after { ... }
Single is used for pseudo-classes like :active
or :hover
, while double is used for pseudo-elements like ::before
or ::after
. So what is the difference between pseudo-classes and pseudo-elements?
Pseudo-classes
Pseudo-classes as used for selecting states of an element. They are not elements themselves. Some examples are:
.anchor:hover {
/* styles for the hover state of the anchor */
}
.anchor:visited {
/* styles for already visited anchor */
}
Pseudo-elements
pseudo-elements on the other hand are used for selecting parts of an actual DOM element, such as what comes before or after it, specific letters, or even lines. Some examples are:
.paragraph::before {
/* style the pseudo element before the paragraph */
}
.paragraph::after {
/* style the pseudo element after the paragraph */
}
.paragraph::first-line {
/* style the first line of the paragraph */
}
.paragraph::first-letter {
/* style the first letter of the paragraph */
}
Resources:
Rocket Launch Your Career
Speed up your learning progress with our mentorship program. Join as a mentee to unlock the full potential of Webtips and get a personalized learning experience by experts to master the following frontend technologies: