CSS Pseudo-elements

What are Pseudo-Elements? A CSS pseudo-element is used to style specified parts of an element. For example, it can be used to: S...

What are Pseudo-Elements?

A CSS pseudo-element is used to style specified parts of an element.
For example, it can be used to:
  • Style the first letter, or line, of an element
  • Insert content before, or after, the content of an element

Syntax

The syntax of pseudo-elements:
selector::pseudo-element {
    property:value;
}
Notice the double colon notation - ::first-line versus :first-line

The double colon replaced the single-colon notation for pseudo-elements in CSS3. This was an attempt from W3C to distinguish between pseudo-classes and pseudo-elements.

The single-colon syntax was used for both pseudo-classes and pseudo-elements in CSS2 and CSS1.

For backward compatibility, the single-colon syntax is acceptable for CSS2 and CSS1 pseudo-elements.

The ::first-line Pseudo-element

The ::first-line pseudo-element is used to add a special style to the first line of a text.
The following example formats the first line of the text in all <p> elements:

Example 

p::first-line {
    color: #ff0000;
    font-variant: small-caps;
}
Try it Yourself »
Note: The ::first-line pseudo-element can only be applied to block-level elements.
The following properties apply to the ::first-line pseudo-element:
  • font properties
  • color properties
  • background properties
  • word-spacing
  • letter-spacing
  • text-decoration
  • vertical-align
  • text-transform
  • line-height
  • clear


The ::first-letter Pseudo-element

The ::first-letter pseudo-element is used to add a special style to the first letter of a text.
The following example formats the first letter of the text in all <p> elements: 

Example

p::first-letter {
    color: #ff0000;
    font-size: xx-large;
}
Try it Yourself »
Note: The ::first-letter pseudo-element can only be applied to block-level elements.
The following properties apply to the ::first-letter pseudo- element: 
  • font properties
  • color properties 
  • background properties
  • margin properties
  • padding properties
  • border properties
  • text-decoration
  • vertical-align (only if "float" is "none")
  • text-transform
  • line-height
  • float
  • clear

Pseudo-elements and CSS Classes

Pseudo-elements can be combined with CSS classes: 

Example

p.intro::first-letter {
    color: #ff0000;
    font-size:200%;
}
Try it Yourself »
The example above will display the first letter of paragraphs with class="intro", in red and in a larger size.

Multiple Pseudo-elements

Several pseudo-elements can also be combined.
In the following example, the first letter of a paragraph will be red, in an xx-large font size. The rest of the first line will be blue, and in small-caps. The rest of the paragraph will be the default font size and color:

Example

p::first-letter {
    color: #ff0000;
    font-size: xx-large;
}

p::first-line {
    color: #0000ff;
    font-variant: small-caps;
}
Try it Yourself »

CSS - The ::before Pseudo-element

The ::before pseudo-element can be used to insert some content before the content of an element.
The following example inserts an image before the content of each <h1> element:

Example

h1::before {
    content: url(smiley.gif);
}
Try it Yourself »

CSS - The ::after Pseudo-element

The ::after pseudo-element can be used to insert some content after the content of an element.
The following example inserts an image after the content of each <h1> element:

Example

h1::after {
    content: url(smiley.gif);
}
Try it Yourself »

CSS - The ::selection Pseudo-element

The ::selection pseudo-element matches the portion of an element that is selected by a user.
The following CSS properties can be applied to ::selectioncolorbackgroundcursor, and outline.
The following example makes the selected text red on a yellow background:

Example

::selection {
    color: red; 
    background: yellow;
}
Try it Yourself »

Test Yourself with Exercises!


All CSS Pseudo Elements

SelectorExampleExample description
::afterp::afterInsert something after the content of each <p> element
::beforep::beforeInsert something before the content of each <p> element
::first-letterp::first-letterSelects the first letter of each <p> element
::first-linep::first-lineSelects the first line of each <p> element
::selectionp::selectionSelects the portion of an element that is selected by a user

All CSS Pseudo Classes

SelectorExampleExample description
:activea:activeSelects the active link
:checkedinput:checkedSelects every checked <input> element
:disabledinput:disabledSelects every disabled <input> element
:emptyp:emptySelects every <p> element that has no children
:enabledinput:enabledSelects every enabled <input> element
:first-childp:first-childSelects every <p> elements that is the first child of its parent
:first-of-typep:first-of-typeSelects every <p> element that is the first <p> element of its parent
:focusinput:focusSelects the <input> element that has focus
:hovera:hoverSelects links on mouse over
:in-rangeinput:in-rangeSelects <input> elements with a value within a specified range
:invalidinput:invalidSelects all <input> elements with an invalid value
:lang(language)p:lang(it)Selects every <p> element with a lang attribute value starting with "it"
:last-childp:last-childSelects every <p> elements that is the last child of its parent
:last-of-typep:last-of-typeSelects every <p> element that is the last <p> element of its parent
:linka:linkSelects all unvisited links
:not(selector):not(p)Selects every element that is not a <p> element
:nth-child(n)p:nth-child(2)Selects every <p> element that is the second child of its parent
:nth-last-child(n)p:nth-last-child(2)Selects every <p> element that is the second child of its parent, counting from the last child
:nth-last-of-type(n)p:nth-last-of-type(2)Selects every <p> element that is the second <p> element of its parent, counting from the last child
:nth-of-type(n)p:nth-of-type(2)Selects every <p> element that is the second <p> element of its parent
:only-of-typep:only-of-typeSelects every <p> element that is the only <p> element of its parent
:only-childp:only-childSelects every <p> element that is the only child of its parent
:optionalinput:optionalSelects <input> elements with no "required" attribute
:out-of-rangeinput:out-of-rangeSelects <input> elements with a value outside a specified range
:read-onlyinput:read-onlySelects <input> elements with a "readonly" attribute specified
:read-writeinput:read-writeSelects <input> elements with no "readonly" attribute
:requiredinput:requiredSelects <input> elements with a "required" attribute specified
:rootrootSelects the document's root element
:target#news:targetSelects the current active #news element (clicked on a URL containing that anchor name)
:validinput:validSelects all <input> elements with a valid value
:visiteda:visitedSelects all visited links

COMMENTS

BLOGGER: 2

recentposts
Name

Bootstrap,1,CSS,2,Html,3,jquery,3,
ltr
item
Designing Tips: CSS Pseudo-elements
CSS Pseudo-elements
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiX_9Lk5Uu7E8w7__1zL-1Qzm3y4MXmYOt61wa9Hg0uPK5QDprebRzFKBe7XnNbM1Kq4KdxPa_GGitRdEK0R3fwAGx7JBGN1VbK7U2_fHLye2MIq8y43OM3ZyESFFsSKhJB_yFTqDb_jGCw/s1600/Romvlvs+%2526+De+Vera.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiX_9Lk5Uu7E8w7__1zL-1Qzm3y4MXmYOt61wa9Hg0uPK5QDprebRzFKBe7XnNbM1Kq4KdxPa_GGitRdEK0R3fwAGx7JBGN1VbK7U2_fHLye2MIq8y43OM3ZyESFFsSKhJB_yFTqDb_jGCw/s72-c/Romvlvs+%2526+De+Vera.png
Designing Tips
https://designingtipss.blogspot.com/2018/09/css-pseudo-elements.html
https://designingtipss.blogspot.com/
http://designingtipss.blogspot.com/
http://designingtipss.blogspot.com/2018/09/css-pseudo-elements.html
true
8297510937443623752
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content