Understand the basics of CSS pseudo-elements
Pseudo-elements are used to style specific parts of an element.
They start with a double colon::
.
Sometimes, you may find them with a single colon, but for backward compatibility reasons, this is only a supported syntax. You should use 2 colons to distinguish them from pseudo-classes.
::before
with::after
Probably the most commonly used pseudo-element. They are used to add content before or after elements, such as icons.
This is a list of pseudo-elements:
Pseudo-element | the goal |
---|---|
::after |
Create a pseudo element after the element |
::before |
Create a pseudo element before the element |
::first-letter |
Can be used to set the style of the first letter of a text block |
::first-line |
Can be used to style the first line of a text block |
::selection |
Position the text selected by the user |
Let's make an example. Suppose you want to make the font size of the first line of a paragraph slightly larger, which is very common in typesetting:
p::first-line {
font-size: 2rem;
}
Or maybe you want the first letter to be bolder:
p::first-letter {
font-weight: bolder;
}
::after
with::before
Not very intuitive. I remember using them when I had to add icons using CSS.
You specifycontent
This attribute can insert any type of content after or before the element:
p::before {
content: url(/myimage.png);
}
.myElement::before {
content: “Hey Hey!”;
}
Download mine for freeCSS Manual
More CSS tutorials:
- Flexbox guide
- CSS grid tutorial
- CSS variables (custom attributes)
- Introduction to PostCSS
- CSS guarantees metallicity
- How to center an element using CSS
- CSS system fonts
- How to print HTML with styles
- Getting started with CSS transition
- CSS animation tutorial
- Introduction to CSS
- CSS guide
- How to set up Tailwind with PurgeCSS and PostCSS
- Tail wind cheat sheet
- How to continuously rotate an image using CSS
- Use CSS to make the table responsive
- How to debug CSS by halving
- CSS selector
- CSS cascade
- CSS specificity
- CSS attribute selector
- CSS colors
- CSS Unit
- CSS url()
- CSS typography
- CSS Box model
- CSS position properties
- CSS media queries and responsive design
- CSS function query
- CSS conversion
- How to style a list with CSS
- CSS vendor prefix
- CSS inheritance
- CSS pseudo-classes
- CSS pseudo elements
- Style HTML tables with CSS
- CSS Display property
- CSS calc() function
- CSS border
- Use @import to import CSS files
- CSS error handling
- CSS filter
- CSS Box size
- CSS background
- CSS comments
- CSS fonts
- CSS padding
- CSS float property and clear
- CSS normalization
- CSS z-index property
- How to disable text selection using CSS
- How to use CSS to place items at the bottom of their container
- How to invert colors using CSS
- Responsive front tags in CSS
- Responsive YouTube video embedding
- What is a good CSS breakpoint value for responsive design?
- How to align the center in Flexbox