The hanging-punctuation
property specifies whether a punctuation mark, at the start or end of a line of text, hangs and may be placed outside the line box.
/* Keyword values — single */ hanging-punctuation: none; hanging-punctuation: first; hanging-punctuation: last; hanging-punctuation: force-end; hanging-punctuation: allow-end; /* Keyword values — two */ hanging-punctuation: first force-end; hanging-punctuation: first allow-end; hanging-punctuation: first last; hanging-punctuation: last force-end; hanging-punctuation: last allow-end; /* Keyword values — three */ hanging-punctuation: first force-end last; hanging-punctuation: first allow-end last; /* Global values */ hanging-punctuation: inherit; hanging-punctuation: initial; hanging-punctuation: unset;
Initial value: none
Applies to: inline elements
Inherited: yes
Percentages: n/a
Media: visual
Computed value: as specified
Animation type: discrete
Canonical order: order of appearance in the formal grammar of the values
Syntax
This property may be specified with one, two, or three values.
One-value syntax: any one of the keyword values listed below.
Two value syntax:
- either
first
together with any one of:last
,allow-end
, orforce-end
- or
last
together with any one of:first
,allow-end
, orforce-end
.
Three-value syntax:
- either
first
,allow-end
, andlast
- or
first
,force-end
, andlast
.
Values
- none
- No character hangs.
first
- An opening bracket or quote at the start of the first formatted line of an element hangs.
last
- A closing bracket or quote at the end of the last formatted line of an element hangs.
force-end
- A stop or comma at the end of a line hangs.
allow-end
- A stop or comma at the end of a line hangs, if it does not otherwise fit prior to justification.
Formal syntax
none | [ first || [ force-end | allow-end ] || last ]