Last Updated: September 29, 2021
·
2.315K
· dcondrey

&nbsp

The No-Break Space is very similar to a Word-Joiner, just as it's very similar to a Space. But each, has very different usages. All of these variations exist to represent different widths and functions of a space character.

  • U+00A0 No-Break Space   represented similarly to a space character, it prevents an automatic line break.
  • U+2007 Figure Space   a space somewhat equal to the figures (0–9) characters.
  • U+202F Narrow No-Break Space   or &nnbsp;) used to separate a suffix from a word stem without indicating a word boundary. Approximately 1/3 the representative space of a normal space though it may vary by font.
  • U+2060 Word-Joiner ⁠ representative by no visible character, it prohibits a line break at its position.

Other No-Break Characters

  • NON-BREAKING HYPHEN (U+2011)
  • FIGURE SPACE (U+2007)
  • NARROW NO-BREAK SPACE (U+202F)
  • TIBETAN MARK DELIMITER TSHEG BSTAR (U+0F0C)

W3C recommends using the Word-Joiner whenever you need to connect two characters or words so that they do not wrap. <sup>[1]</sup>

To get the same functionality, formerly provided by the ZERO-WIDTH NON-BREAKING SPACE authors should use a WORD JOINER (U+2060) instead

However, no-where in the HTML4 Character Reference is <kbd>Word-Joiner</kbd> mentioned. <sup>[2]</sup>

In addition to these characters the <kbd>SOFT HYPHEN (U+00AD)</kbd> can be used to provide line-break hints within words that UAs might not have in their own hyphenation dictionaries.

The only characters that are explicitly discouraged are <kbd>ZERO WIDTH NON-JOINER (U+200C)</kbd>: prevents ligation and cursive connections between characters that would otherwise ligate or join cursively.
- <kbd>ZERO WIDTH JOINER (U+200D)</kbd>: encourages ligation and cursive connections.


References:

  1. W3C Wiki: HTML Character Usage
  2. Character entity references in HTML 4

Further:

  1. Unicode.org Correction of Word_Break Property Value for U+00A0 NBSP
  2. Unicode v.3.2.0 Line Break Properties
  3. Unicode ?Proposed? Line Breaking Properties
  4. Unicode v7 Complete Standards
  5. Unicode Explained by Jukka Korpela

Test

Extra credit: Can I use a UNICODE space character to keep two images inline with each other when they would otherwise break to a new line?

The test: http://codepen.io/dcdev/pen/LEOMLP

Results: No you can not.