Jump to content

Non-breaking space

From Wikipedia, the free encyclopedia
(Redirected from No-Break Space)
 
Non-breaking space
U+00A0   NO-BREAK SPACE ( ,  )
See also
U+202F NARROW NO-BREAK SPACE

U+0020   SPACE[a]

Other types of spaces

In word processing and digital typesetting, a non-breaking space ( ), also called NBSP, required space,[1] hard space, or fixed space (in most typefaces, it is not of fixed width), is a space character that prevents an automatic line break at its position. In some formats, including HTML, it also prevents consecutive whitespace characters from collapsing into a single space. Non-breaking space characters with other widths also exist.

Uses

[edit]

Despite having layout and uses similar to those of whitespace, it differs in contextual behavior.[2][3]

Non-breaking behavior

[edit]

Text-processing software typically assumes that an automatic line break may be inserted anywhere a space character occurs; a non-breaking space prevents this from happening (provided the software recognizes the character).

For example, if the text "100 km" will not quite fit at the end of a line, the software may break the line between "100" and "km". Using a non-breaking space between "100" and "km" will prevent this behaviour. This guarantees that the text "100 km" will not be broken—if it does not fit at the end of a line, it is moved in its entirety to the next line. For this reason, many style guides recommend using a non-breaking space between numbers and their associated units.[4][5]

In French typography, non-breaking spaces are used before "high punctuation" (:, ;, ?, and !), on the interior side of guillemets (« and »), and before footnotes. In the case of ;, ?, !, and footnotes (unless enclosed by parentheses), it is specifically the narrow non-breaking space that is used.[6][7]

In German typography, it is used between multi-part abbreviations (e.g., "z. B.", "d. h.", "v. l. n. r.").[8]

Non-collapsing behavior

[edit]

A second common application of non-breaking spaces is in plain text file formats such as SGML, HTML, TeX and LaTeX, whose rendering engines are programmed to treat sequences of whitespace characters (space, newline, tab, form feed, etc.) as if they were a single character (but this behavior can be overridden). Such "collapsing" of whitespace allows the author to neatly arrange the source text using line breaks, indentation and other forms of spacing without affecting the final typeset result.[9][10]

In contrast, non-breaking spaces are not merged with neighboring whitespace characters when displayed. They can, therefore, be used by an author to simply insert additional visible space in the resulting output without using spans styled with peculiar values of the CSS "white-space" property. Conversely, indiscriminate use (see the recommended use[citation needed] in style guides), in addition to a normal space, gives extraneous space in the output.

Variations

[edit]

Narrow non-breaking space

[edit]

U+202F NARROW NO-BREAK SPACE (NNBSP) is another non-breaking space, but with a smaller width than the standard non-breaking space (U+00A0). When used with Mongolian, its width is usually one third of the normal space;[11] in other contexts, its width is about 70% of the normal space, but may resemble that of the thin space (U+2009), at least with some fonts.[citation needed]

It was introduced in Unicode 3.0 for Mongolian,[12] to separate a suffix from the word stem without indicating a word boundary. It also triggers special shaping of those suffixes.[13] Starting in Unicode 16.0, it is no longer recommended for this purpose, with the Mongolian vowel separator (U+180E) being recommended for this purpose instead.[14][15]

In French typography, it is called espace fine insécable[14] and is used before ;, ?, and !.[6][7] Additionally, footnotes are preceded by a narrow non-breaking space[7] (unless they are enclosed by parentheses, in which case a regular non-breaking space is used).[6]

The narrow non-breaking space is used in numbers as a group separator in French (starting in Unicode CLDR 34[16]) and Venetian (starting in Unicode CLDR 44[17]). In Spanish, the Royal Spanish Academy and Association of Academies of the Spanish Language's Diccionario panhispánico de dudas proscribes the use of a small space as the number group separator,[18] although this is not the case in Unicode's Common Locale Data Repository (CLDR).[19]

Other variations

[edit]

Other non-breaking variants defined in Unicode.

U+2007 FIGURE SPACE ( )
Produces a space equal to the figure (0–9) characters.
U+2060 WORD JOINER (⁠ · WJ)
Encoded in Unicode since version 3.2. The word joiner does not produce any space and prohibits a line break at its position.

Example

[edit]

On browsers, resizing the window will demonstrate the effect of non-breaking spaces on the texts below.

To show the non-breaking effect of the non-breaking space, the following words have been separated with non-breaking spaces:

Lorem Ipsum Dolor Sit Amet Consectetur Adipiscing Elit Sed Do Eiusmod Tempor Incididunt Ut Labore Et Dolore Magna Aliqua Ut Enim Ad Minim Veniam Quis Nostrud Exercitation Ullamco Laboris Nisi Ut Aliquip Ex Ea Commodo Consequat Duis Aute

To show the non-collapsing behavior of the non-breaking space, the following words have been separated with an increasing number of non-breaking spaces:

Lorem Ipsum  Dolor   Sit    Amet     Consectetur      Adipiscing       Elit        Sed         Do          Eiusmod           Tempor            Incididunt             Ut              Labore               Et                Dolore                 Magna                  Aliqua                   Ut                    Enim                     Ad                      Minim

In contrast, the following words are separated with ordinary spaces:

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Here, they are separated with narrow non-breaking spaces, to show the width of those:

Lorem Ipsum Dolor Sit Amet Consectetur Adipiscing Elit Sed Do Eiusmod Tempor Incididunt Ut Labore Et Dolore Magna Aliqua Ut Enim Ad Minim Veniam Quis Nostrud Exercitation Ullamco Laboris Nisi Ut Aliquip Ex Ea Commodo Consequat Duis Aute

Unicode

[edit]

See also

[edit]

Notes

[edit]
  1. ^ For presentation reasons, representations of a regular space in this article are replaced with a no-break space

References

[edit]
  1. ^ IBM (1998) [1995]. "Windows, Latin 1". REGISTRY, Graphic Character Sets and Code Pages. CPGID 01252.
  2. ^ Elyaakoubi, Mohamed; Lazrek, Azzeddine (2010). "Justify Just or Just Justify". The Journal of Electronic Publishing. 13. doi:10.3998/3336451.0013.105. hdl:2027/spo.3336451.0013.105.
  3. ^ "Special Characters". The Chicago Manual of Style Online.
  4. ^ "Style guide". UK Metric Association. 12 July 2017. Retrieved 21 April 2025. Where there is room, leave a (non-breaking) space between the number and the unit.
  5. ^ "Numbers, units and symbols". National Institute for Health and Care Excellence. 25 January 2016. Retrieved 21 April 2025. Use non-breaking spaces between numbers and units (Ctrl+Shift+Space), except for percentages and temperatures (37°C, 76%).
  6. ^ a b c Lexique des règles typographiques (3rd ed.). Imprimerie nationale. 1990. pp. 25, 148–149. ISBN 2-11-081075-0.
  7. ^ a b c "Types d'espacement". Office québécois de la langue française (in Canadian French). Government of Quebec. Retrieved 21 April 2025.
  8. ^ Solbrig, Amelie (30 January 2008). "Zweisprachige Mikrotypografie" (PDF) (in German). Hochschule für Technik, Wirtschaft und Kultur Leipzig. p. 113. Archived from the original (PDF) on 2016-03-11. Retrieved 10 June 2018. Alle Abkürzungen mit Binnenpunkten werden im Deutschen mit einem gFL [geschütztes flexibles Leerzeichen] spationiert. [...] Die englische Schreibweise sieht keine Abstände zwischen einzelnen Buchstaben vor. Nach einem Binnenpunkt folgt demnach ohne gFL sofort der nächste Buchstabe.
  9. ^ "Structure", HTML 4.01, W3, 1999-12-24.
  10. ^ "Text", CSS 2.1, W3.
  11. ^ "Writing Systems and Punctuation" (PDF). The Unicode Standard 7.0. Unicode Inc. 2014. Retrieved 2014-11-02.
  12. ^ "AMENDMENT 29: Mongolian" (PDF). Information technology — Universal Multiple-Octet Coded Character Set (UCS) — Part 1: Architecture and Basic Multilingual Plane. ISO/IEC. 1999. ISO/IEC 10646-1:1993/FDAM 29:1999(E).
  13. ^ "6.2.3 Space Characters". The Unicode Standard Version 15.0 – Core Specification (PDF). The Unicode Consortium. September 2022. p. 268. ISBN 978-1-936213-32-0.
  14. ^ a b "6.2.3 Space Characters". The Unicode Standard Version 16.0 – Core Specification (PDF). The Unicode Consortium. September 10, 2024. p. 327. ISBN 978-1-936213-34-4.
  15. ^ "13.5.1 Mongolian: U+1800–U+18AF". The Unicode Standard Version 16.0 – Core Specification (PDF). The Unicode Consortium. September 10, 2024. p. 651. ISBN 978-1-936213-34-4. Prior to Unicode Version 16.0, U+202F NARROW NO-BREAK SPACE (NNBSP) was used to represent this small whitespace; it retains its Script_Extensions value of "Mong" to facilitate backward compatibility. However, its role has been taken over by U+180E MONGOLIAN VOWEL SEPARATOR (MVS), which not only prevents word breaking and line breaking, but also triggers special shaping for the following separated suffix.
  16. ^ "CLDR 34 Release Note". The Unicode Consortium. 2018-10-15. French grouping separator changed from no-break space U+00A0 to narrow no-break space U+202F.
  17. ^ "CLDR v44.0 — By-Type Chart: Numbers:Symbols". The Unicode Consortium. 2023-10-25.
  18. ^ "punto" [Period]. Diccionario panhispánico de dudas (in Spanish) (2nd (provisional version) ed.). Royal Spanish Academy and Association of Academies of the Spanish Language. Retrieved 2022-01-07. Para facilitar la lectura de los números cuya parte entera conste de más de cuatro cifras, se recomienda escribirlos separando con un pequeño espacio los grupos de tres dígitos, contados de derecha a izquierda
  19. ^ "CLDR v47.0 — By-Type Chart: Numbers:Symbols". The Unicode Consortium. 2025-03-11.