Non-breaking space


In word processing and digital typesetting, a non-breaking space,, also called no-break space, non-breakable space, required space, hard space, or fixed space, 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 and variations

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

Non-breaking behavior

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. For example, if the text "100 km" will not quite fit at the end of a line, the software may insert a line break between "100" and "km". An editor who finds this behaviour undesirable may choose to use a non-breaking space between "100" and "km". 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.

Non-collapsing behavior

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 as if they were a single character. 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.
In contrast, non-breaking spaces are not merged with neighboring whitespace characters when displayed, and 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, in addition to a normal space, gives extraneous space in the output.

Width variation

Other non-breaking variants, defined in Unicode:
On browsers supporting non-breaking spaces, 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

Encodings

Unicode defines several other non-break space characters. See. Encoding remarks:
It is rare for national or international standards on keyboard layouts to define an input method for the non-breaking space. An exception is the Finnish multilingual keyboard, accepted as the national standard SFS 5966 in 2008. According to the SFS setting, the non-breaking space can be entered with the key combination AltGr + Space.
Typically, authors of keyboard drivers and application programs have devised their own keyboard shortcuts for the non-breaking space. For example:
System/applicationEntry method
Microsoft Windows+ or +
macOS
Linux or Unix using X11,, or
AmigaOS
GNU Emacs
Vim,, ; or,,
Dreamweaver, LibreOffice, Microsoft Word,
OpenOffice.org, AutoCAD
FrameMaker, LyX, OpenOffice.org,
WordPerfect
Mac Adobe InDesign

Apart from this, applications and environments often have methods of entering unicode entities directly via their code point, e.g. via the Alt Numpad input method. in codepage 437 and codepage 850, and code point 160 decimal