Soft hyphen is the Unicode character at U+00AD in Latin-1 Supplement. Official name: SOFT HYPHEN. It marks an optional break point inside a word — invisible unless the line wraps there.
Remember
Character (invisible until wrap)
Unicode U+00AD
Named entity ­
Hex entity ­
Decimal ­
CSS escape \AD
Not the same - · ‐ · ‑
Prefer ­ inside long words in HTML. Place soft hyphens at sensible syllable boundaries. Do not use them where you always want a visible hyphen.
Named: extraordinary (may wrap as extraordi-
nary in the narrow box)
Hex: extraordinary
Decimal: extraordinary
Using CSS Entity:
Note: Soft hyphen is invisible when the word fits on one line.
How It Works
1. Named:­ is the HTML5 name for U+00AD. Best default inside long words.
2. Hex:U+00AD → ­ in HTML. Same soft-hyphen behavior as named.
3. Decimal: same code point as 173 → ­. Same result as hex and named.
4. CSS: use \AD in content (not an HTML entity). #point::after appends a soft hyphen after the paragraph text.
5. Narrow box:.narrow { width: 8em; } forces wrapping so you can see the optional hyphen appear at the soft-hyphen position.
Pitfalls & Tips
Common mistakes when working with ­.
Invisible
Not broken = not visible
If the word fits on one line, soft hyphen shows nothing. That is correct behavior — not a bug.
vs -
Not an always-on hyphen
Hyphen-minus (-) always displays. Soft hyphen only appears when a wrap happens at that point.
vs ‑
Not non-breaking hyphen
U+2011 (‑) prefers to keep both sides together. Soft hyphen invites a break when needed.
Placement
Use syllable-friendly spots
Prefer breaks like extraordi­nary, not random mid-syllable cuts that look odd when wrapped.
Overuse
Do not soft-hyphen everything
Add soft hyphens only where long words cause layout problems. Short words usually do not need them.
CSS vs HTML
Do not mix escapes
\AD belongs in CSS strings. ­ / ­ / ­ belong in HTML.
Compatibility
Browser Support
Soft hyphen (U+00AD) and its entity forms (­, ­, ­, CSS \\AD) are supported in all mainstream browsers for optional word breaking.
✓ Universal support
Soft Hyphen (U+00AD)
Encode with named, hex, decimal, or CSS escape — same optional-break behavior everywhere soft hyphen is supported.
100%Browser coverage
Google ChromeSupported
Yes
Microsoft EdgeSupported
Yes
Mozilla FirefoxSupported
Yes
Apple SafariSupported
Yes
OperaSupported
Yes
Internet ExplorerAll versions
Yes
U+00AD / entitiesFull support
Bottom line: Prefer ­ in HTML. Use ­ / ­ when numeric form is required, and \\AD only inside CSS content.
Remember
Key Takeaways
Unicode: soft hyphen is U+00AD (decimal 173) — optional break, not always visible.
HTML: prefer ­ — also ­ / ­.
CSS: use \AD inside content for generated soft hyphens.
Meaning: optional wrap hint — not -, not ‐, not ‑.
One line:U+00AD → ­ / ­ / ­ / CSS \AD (shows only when wrapping).
Frequently Asked Questions
Use ­ (named), ­ (hex), ­ (decimal), or the CSS escape \AD in content. Prefer ­ inside long words in markup.
U+00AD (SOFT HYPHEN). Hex AD, decimal 173. It belongs to the Latin-1 Supplement block (U+0080–U+00FF).
Yes. Use ­. Numeric forms ­ and ­ also work.
By design it is invisible when the word fits on one line. A hyphen appears only if the browser breaks the line at that soft-hyphen position.
Use it for optional breaks in long words in narrow columns or responsive layouts — not as a substitute for a visible hyphen you always want shown.
HTML entities (­, ­, or ­) go in markup. The CSS escape \AD goes in stylesheet strings (usually content on ::before/::after).
🤔
Did you know?
Soft hyphen is Unicode U+00AD (decimal 173) in Latin-1 Supplement. HTML5 names it ­. Official name: SOFT HYPHEN. It marks an optional break inside a word — invisible unless the browser wraps at that point. Do not confuse with hyphen-minus U+002D (-), hyphen U+2010 (‐), or non-breaking hyphen U+2011 (‑).