coderef

Hanging punctuationLimited availability

The hanging-punctuation CSS property puts punctuation characters outside of the box to align the text with the rest of the document.

Not yet supported in all major browsers — check the table and provide a fallback.

Browser support

DesktopChrome
✕Not supportedup to 155
Current: 155
Edge
✕Not supportedup to 154
Current: 154
Firefox
✕Not supportedup to 157
Current: 157
Safari
1–26.4Not supported
26.5+Supportedsince May 11, 2026
Current: 27
MobileChrome Android
✕Not supportedup to 155
Current: 155
Firefox Android
✕Not supportedup to 157
Current: 157
Safari iOS
1–26.4Not supported
26.5+Supportedsince May 11, 2026
Current: 27

How to use

Not supported in Chrome, Edge, Firefox, Chrome Android, Firefox Android. Use feature detection below and provide a fallback (or a polyfill) for those browsers.

Example

Full syntax and examples are on MDN: hanging-punctuation.

Feature detection

CSS · check before using
@supports (hanging-punctuation: initial) {
  /* styles that rely on hanging-punctuation */
}

/* or in JavaScript */
if (CSS.supports("hanging-punctuation", "initial")) {
  // use it
}

Sub-features

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

Sub-featureChromeEdgeFirefoxSafariChrome AndroidFirefox AndroidSafari iOS
hanging-punctuation✕✕✕26.5✕✕26.5
hanging-punctuation.allow-end✕✕✕26.5✕✕26.5
hanging-punctuation.first✕✕✕26.5✕✕26.5
hanging-punctuation.force-end✕✕✕26.5✕✕26.5
hanging-punctuation.last✕✕✕26.5✕✕26.5
hanging-punctuation.none✕✕✕26.5✕✕26.5