줄 바꿈 없는 공백
U+00A0. 해당 위치에서 줄 바꿈을 방지하는 공백. HTML: . 숫자와 단위(100 km), 고유명사(Mr. Smith), 약어 뒤에 사용됩니다.
What is a Non-Breaking Space?
The non-breaking space (NBSP) is a space character that looks identical to a regular space but has a special typographic and semantic property: it prevents the text rendering engine from inserting a line break at that position. When a line must wrap, it will break at a regular space — but never at a non-breaking space. The two characters around an NBSP stay together, always on the same line.
Unicode code point: U+00A0, encoded in UTF-8 as 0xC2 0xA0.
When to Use a Non-Breaking Space
The non-breaking space solves the problem of orphaned words and awkward breaks in specific text patterns:
| Use Case | Example | Without NBSP | With NBSP |
|---|---|---|---|
| Number + unit | 100 km |
"100" then "km" on next line | Always together |
| Title + name | Mr. Smith |
"Mr." alone at line end | Always together |
| Date parts | 25 January |
"25" alone | Always together |
| Currency | $1,000 |
May break oddly | Protected |
| Phone numbers | +1 800 555 |
Can break mid-number | Protected |
| French guillemets | « bonjour » |
Space before » might wrap |
Protected |
In French typography, non-breaking spaces are required before certain punctuation marks: :, ;, !, ?, » and after «. This is a strict typographic rule in French publishing.
Typing the Non-Breaking Space
- macOS: Option + Space
- Windows: Alt + 0160 (numpad), or Ctrl+Shift+Space in MS Word
- HTML:
(the most common HTML entity of all time) - CSS:
white-space: nowrapachieves a similar effect without the character itself
<!-- Keep "100" and "km" on the same line -->
100 km
<!-- French typography -->
Bonjour !
<!-- Non-breaking in a span -->
<span style="white-space: nowrap">Mr. Smith</span>
NBSP vs. CSS white-space
The non-breaking space character operates at the content level — it's part of the text. CSS white-space: nowrap operates at the presentation level — it prevents wrapping for an entire element. Choose based on the situation:
- Use
when the no-break relationship is semantic (a unit and its number belong together) - Use
white-space: nowrapwhen you want to prevent all wrapping in a UI element (like a navigation label) - Use
width: max-contentorflex-wrap: nowrapfor layout-level control
The Width Gotcha
Non-breaking spaces have the same visual width as regular spaces (in most fonts), but they behave differently in:
- Trimming: JavaScript
trim()does NOT remove NBSP. Usereplace(/[\s\u00A0]+/g, ' ')to normalize. - String splitting:
split(' ')on a string containing NBSP will not split at the NBSP position. - Regex:
\smatches NBSP in most engines, but[ ](literal space class) does not.
const s = "100\u00A0km";
console.log(s.trim()); // "100 km" — NBSP preserved
console.log(s.split(" ")); // ["100 km"] — no split at NBSP
console.log(s.split(/\s/)); // ["100", "km"] — \s matches NBSP
Quick Facts
| Property | Value |
|---|---|
| Unicode code point | U+00A0 |
| Unicode name | NO-BREAK SPACE |
| UTF-8 encoding | 0xC2 0xA0 (2 bytes) |
| HTML entity | |
| macOS shortcut | Option + Space |
| Windows shortcut | Alt + 0160 |
| Visual appearance | Identical to regular space |
| Line break behavior | Never breaks here |
| JavaScript trim() | Does NOT remove NBSP |
관련 용어
타이포그래피의 더 많은 용어
CSS @font-face descriptor specifying which Unicode code points a font should cover. …
Em: 폰트 크기와 같은 너비. En: Em의 절반. 엠 대시 너비, 엠 …
The mechanism by which a rendering engine substitutes glyphs from a secondary …
Modern font format developed by Microsoft and Adobe supporting up to 65,535 …
문자가 오른쪽에서 왼쪽으로 흐르는 텍스트 방향. 아랍어, 히브리어, 타아나 문자 등에서 사용되며, …
Fonts downloaded by the browser to render text, declared via CSS @font-face. …
앞의 기본 문자에 붙어 수정하는 문자. 일반 범주: Mn(비공백), Mc(공백 결합), Me(둘러싸기). …
가로 또는 세로 공간을 표현하지만 눈에 보이는 글리프가 없는 문자. 유니코드는 서로 …
폰트가 렌더링하는 문자의 시각적 표현. 하나의 문자가 여러 글리프를 가질 수 있고(합자, …
전진 너비가 0인 문자 — 렌더링에서 보이지 않지만 텍스트 동작에 영향을 줍니다. …