coderef

::before and ::afterBaseline · Widely available

The ::before and ::after CSS pseudo-elements select inline boxes preceding and following an element. They are often used with the content property to generate cosmetic content.

Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Jul 29, 2015. Widely available since Jan 29, 2018.

Browser support

DesktopChrome
1+Supportedsince Dec 11, 2008
Current: 155
Edge
12+Supportedsince Jul 29, 2015
Current: 154
Firefox
1–1Not supported
1.5+Supportedsince Nov 29, 2005
Current: 157
Safari
1–3.1Not supported
4+Supportedsince Jun 8, 2009
Current: 27
MobileChrome Android
18+Supportedsince Jun 27, 2012
Current: 155
Firefox Android
4+Supportedsince Mar 29, 2011
Current: 157
Safari iOS
1–3Not supported
3.2+Supportedsince Apr 3, 2010
Current: 27

How to use

This feature is Baseline widely available — use it freely, no fallback needed.

Example

Full syntax and examples are on MDN: ::after.

Feature detection

CSS · check before using
@supports selector(::after) {
  /* styles that use ::after */
}

/* or in JavaScript */
if (CSS.supports("selector(::after)")) {
  // use it
}

Sub-features

Support for each part of the feature (4). The overall table above shows when the whole feature works.

Sub-featureChromeEdgeFirefoxSafariChrome AndroidFirefox AndroidSafari iOS
after1121.541843.2
after.animation_and_transition_support2612472647
before1121.541843
before.animation_and_transition_support2612472647