Неразрывный пробел: как поставить в Word и HTML и где он нужен

Неразрывный пробел (U+00A0) запрещает перенос строки между словами. В Word его ставят сочетанием Ctrl+Shift+Пробел, в Windows через Alt+0160, в HTML мнемоникой nbsp.

Разбираем правила набора, случаи, когда он мешает вёрстке, и почему из-за него не сходятся числа в Excel и Python.

Статью написал:
Ваня Буявец, продюсер, основатель Checkroi
Ваня Буявец
Основатель Checkroi, продюсер, эксперт в выборе онлайн-курсов
Все 2979 статей автора Подписаться на Телеграм-канал
Одобрено экспертом:
Наташа Буявец, основатель Checkroi, эксперт по онлайн-курсам
Наташа Буявец
Основательница Checkroi, продюсер Youtube-каналов, эксперт по онлайн-курсам
Все 3633 экспертных мнения Подписаться на Телеграм-канал
Обложка: Неразрывный пробел: как поставить в Word и HTML и где он нужен

Неразрывный пробел выглядит как обычный, но строка на нём не разрывается: слова по обе стороны всегда остаются вместе. Его ставят между числом и единицей («15 900 ₽», «2026 г.»), между инициалами и фамилией, после коротких предлогов. В Word его вводят сочетанием Ctrl+Shift+Пробел, в программах Windows подойдёт Alt+0160, а в HTML пишут мнемонику  . В Юникоде это символ U+00A0.

Дальше по порядку: чем он отличается от обычного пробела, где его требуют правила набора, когда   в вёрстке вредит и почему из-за него не сходятся числа в Excel и падает код на Python.

CheckroiCheckroiПодборка курсов по HTML208 курсов • 42 школыСравните цены, школы, программу и найдите выгодные предложения по обучениюСравнить→

Чем неразрывный пробел отличается от обычного

Рой сравнивает два варианта набора текста

По ширине разницы обычно нет. Различается поведение: браузер и текстовый редактор обращаются с этими символами по-разному.

Признак Обычный пробел Неразрывный пробел
Код в Юникоде U+0020 U+00A0
Перенос строки на нём разрешён запрещён
Несколько подряд в HTML схлопываются в один сохраняются все
Растягивается при выравнивании по ширине да да (в браузере)
Как ввести клавиша «Пробел» Ctrl+Shift+Пробел, Alt+0160,  

Запрет переноса записан в стандарте Юникода. В алгоритме переноса строк UAX #14 символ U+00A0 входит в класс GL, «склейку»: он запрещает разрыв строки и до себя, и после.

Схлопывание задаёт CSS. По спецификации CSS Text обработка пробелов касается только обычного пробела, табуляции и переводов строки. U+00A0 в этот список не входит, поэтому пять   подряд браузер покажет пятью пробелами. Там же неразрывный пробел назван разделителем слов, так что при text-align: justify он растягивается вместе с обычными.

На кадре ниже один и тот же текст в рамке шириной 250 пикселей. Слева обычные пробелы: цифра «6» осталась в конце строки, а слово «месяцев» уехало вниз. Справа неразрывные: цифра перешла на новую строку вместе со словом, а предлог «в» вместе с годом. Повторить опыт несложно: создайте HTML-файл, вставьте оба варианта и сузьте окно браузера.

Перенос строки в браузере с обычными и неразрывными пробелами: цифра и предлог не отрываются от слова
Текст одинаковый, отличаются только пробелы. Слева цифра «6» и предлог «в» остались в конце строки, справа они перешли вниз вместе со своими словами. Снято в Chrome

Как поставить неразрывный пробел

Способ зависит от программы. Ниже самые частые случаи.

В Microsoft Word

Поставьте курсор между словами и нажмите Ctrl+Shift+Пробел. Если удобнее мышью, путь через меню описан в справке Microsoft:

  1. Вкладка «Вставка» → группа «Символы» → «Символ».
  2. Пункт «Другие символы».
  3. Вкладка «Специальные символы» → строка «Неразрывный пробел» → кнопка «Вставить».

Есть и третий вариант: наберите 00A0 и сразу нажмите Alt+X, код превратится в символ. Приём работает для любого знака Юникода, он описан в справке Microsoft о вводе символов.

В других программах Windows

Зажмите Alt и наберите 0160 на цифровой клавиатуре справа. Цифры над буквами для этого не подходят, а Num Lock должен быть включён, об этом предупреждает та же справка Microsoft.

Символ с кодом 160 и есть неразрывный пробел. Так его можно вставить в браузере, почте или мессенджере. Тем же способом ставят символ градуса, только код другой: 0176.

В МойОфис, LibreOffice и Tilda

  • «МойОфис Текст»: Ctrl+Shift+Пробел или меню «Специальные символы», так пишут в блоге разработчика.
  • LibreOffice Writer: команда «Непечатаемый символ» открывает подменю с неразрывным пробелом и его узким вариантом U+202F, как сказано в справке LibreOffice.
  • Tilda: отдельная кнопка на панели редактирования текста, её показывает справка Tilda. Пригодится, если вы собираете сайт на Тильде и заголовок на телефоне рвётся в неудачном месте.

В HTML

Три записи дают один и тот же символ U+00A0, это видно в таблице мнемоник стандарта HTML:

     мнемоника
     десятичный код
     шестнадцатеричный код

<p>Цена со скидкой 15&nbsp;900&nbsp;₽</p>

Можно вставить в исходник и сам символ. Работать он будет так же, но в редакторе кода неотличим от обычного пробела, а &nbsp; видно при правке. Задача у него обратная тегу br: тот переносит строку принудительно, а неразрывный пробел перенос запрещает.

Канал основателя Checkroi Вани Буявца3 700 человек читают мой Телеграм-канал про нейросетиСобрал промпты для Claude Code и ChatGPT, разборы ИИ-инструментов и лайфхаки по продвижению бизнеса в одном местеПрисоединиться

Где нужен неразрывный пробел по правилам набора

Рой доволен ровно свёрстанным абзацем

Строгого свода правил нет. В «Ководстве» студии Лебедева прямо сказано, что правила переноса носят рекомендательный характер. Но основные случаи у справочников похожи, вот список из справки Tilda:

  • число и единица или слово после него: 42 км, 20 котят, 1984 г.;
  • инициалы и фамилия: А. С. Пушкин;
  • сокращения с точками: т. е., и т. д.;
  • одно- и двухбуквенные предлоги и союзы со следующим словом: в Москве, и вот;
  • слово перед тире: тире должно остаться в конце строки, а не начинать новую.

Последние два пункта есть и в «Ководстве», и в справке Tilda. Туда же относятся группы разрядов в больших числах: 15 900, 1 234 567. Так их форматирует и сам браузер: (1234567).toLocaleString("ru-RU") возвращает строку с U+00A0 между группами.

Телефоны и слова через дефис неразрывными пробелами не склеивают. По «Ководству», для них используется неразрывный диапазон, а в современной вёрстке его задают свойством white-space: nowrap из CSS.

В редакциях за такие мелочи отвечает типограф. В вебе текст обычно прогоняют через автоматический типограф: он сам расставляет кавычки, тире и неразрывные пробелы.

Когда неразрывный пробел в вёрстке вредит

Частая ошибка: делать отступ цепочкой &nbsp;. Это работает, потому что такие пробелы не схлопываются. Но ширина отступа зависит от шрифта, а длинную цепочку слов, склеенных неразрывными пробелами, браузер не может перенести, и на узком экране она вылезает за край блока.

Пять обычных пробелов браузер схлопывает в один, пять nbsp оставляет, отступ через margin-left даёт ту же картинку
Пять обычных пробелов браузер показал одним, пять неразрывных сохранил. Третий вариант с margin-left выглядит так же, но ширину отступа задаёт стиль, а не шрифт

Решение: отступы задавать стилем, через margin или padding, как в третьем примере на кадре. Про оформление абзацев отдельно рассказано в статье о теге p.

Телефон или артикул, который нельзя рвать, удобнее обернуть в класс, чем ставить &nbsp; между каждой группой цифр:

.nowrap { white-space: nowrap; }

<span class="nowrap">+7 495 123-45-67</span>

На телефонах с узким экраном такие блоки стоит проверить отдельно, а правила для разных ширин собрать в медиа-запросы.

Неразрывный пробел в данных и коде

Цены и суммы, скопированные с сайтов, часто приходят с U+00A0 между разрядами. Человек разницы не видит, а программа сравнивает коды символов, и строка «15 900» для неё не равна «15 900».

Excel

Функция СЖПРОБЕЛЫ убирает только обычный пробел с кодом 32. Знак неразрывного пробела с десятичным кодом 160 она не удаляет, так прямо написано в справке функции.

Для символа 160 Microsoft в руководстве по очистке данных советует сначала заменить его функцией ПОДСТАВИТЬ:

=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A2;СИМВОЛ(160);" "))

Чистить выгрузку стоит до того, как вы начнёте удалять дубликаты: строки, которые отличаются только видом пробела, Excel считает разными.

Python

Код ниже запущен в Python 3.14, вывод в комментариях настоящий:

price = "15\xa0900"            # так цена приходит со страницы сайта
print(price == "15 900")        # False: в образце обычный пробел
print(price.replace(" ", ""))   # 15 900: replace не тронул U+00A0
print(price.split())            # ['15', '900']: split() считает его пробелом
print(int(price.replace("\xa0", "")))  # 15900

Если отдать такую строку прямо в int(), получите ValueError: invalid literal for int() with base 10: '15\xa0900'.

JavaScript

В JS неразрывный пробел попадает под \s в регулярных выражениях, поэтому чистить проще. Ловушка в другом: форматирование чисел для русской локали само ставит U+00A0, и сравнение с образцом через обычный пробел ломается. Вывод из Node.js 25:

const n = (1234567).toLocaleString("ru-RU");
console.log(n === "1 234 567");   // false
console.log(n.charCodeAt(1));      // 160
console.log(/\s/.test(" "));  // true
console.log(n.replace(/\s/g, "")); // 1234567

Похожие тонкости с невидимыми символами встречаются, когда строку кодируют в Base64: результат зависит от того, какой пробел был в исходнике.

Другие особые пробелы

Клавиатура с подсвеченными Ctrl, Shift и пробелом

Кроме U+00A0 в Юникоде есть пробелы фиксированной ширины. Большинство из них на перенос не влияют: по UAX #14 у них своя ширина, но строка на них разрывается так же, как на обычном пробеле.

Символ Код В HTML Строка разрывается
Неразрывный пробел U+00A0 &nbsp; нет
Узкий неразрывный пробел U+202F &#8239; нет
Цифровой пробел, шириной с цифру U+2007 &numsp; нет
Тонкая шпация U+2009 &thinsp; да
Полукруглая шпация U+2002 &ensp; да
Круглая шпация U+2003 &emsp; да
Пробел нулевой ширины U+200B &ZeroWidthSpace; да, без видимого пробела

Узкий неразрывный пробел ставят там, где обычный кажется слишком широким. Пробел нулевой ширины решает обратную задачу: подсказывает браузеру, где можно перенести длинный адрес или слово. Как один символ превращается в разные начертания на экране, разобрано в статье про глифы.

Ваня БуявецКанал основателя Checkroi Вани БуявцаЗабирайте промпты и обучение по нейросетям в моём Телеграм-каналеБольше 3 700 человек уже применяют Claude Code, ChatGPT и другие нейросети в работе, учёбе, бизнесе и жизниПерейти в канал

Где освоить HTML и вёрстку

Неразрывные пробелы, перенос строк на узком экране, выбор тега для абзаца: из таких решений состоит ежедневная работа HTML-верстальщика. Системно этому учат на курсах HTML и CSS, ниже пять программ из каталога Checkroi.

КурсШколаСтоимость со скидкойВ рассрочкуДлитель­ностьОбзор курса от Checkroi
HTML и CSS с нуля
Перейти на сайт курса
SkillboxSkillbox91 626 ₽7635 ₽/мес.11 месяцевОбзор курса
HTML и CSS. Адаптивная вёрстка и автоматизация
Перейти на сайт курса
HTMLAcademyHTML Academy23 400 ₽3900 ₽/мес.2 месяцаОбзор курса
Основы вёрстки HTML и CSS
Перейти на сайт курса
Академия СинергияАкадемия Синергия32 676 ₽2723 ₽/мес.3 месяцаОбзор курса
HTML и CSS с нуляSkyproSkypro195 160 ₽7972 ₽/мес.12 месяцевОбзор курса
Онлайн-курс Вёрстка на HTML и CSS
Перейти на сайт курса
БруноямБруноям29 900 ₽2491 ₽/мес.3 месяцаОбзор курса

Больше программ — в полном каталоге курсов по HTML

Часто задаваемые вопросы

Как поставить неразрывный пробел на клавиатуре?

В Word нажмите Ctrl+Shift+Пробел. В большинстве программ Windows зажмите Alt и наберите 0160 на цифровой клавиатуре справа. В HTML вместо клавиш пишут мнемонику &nbsp;.

Что значит nbsp в HTML?

Это сокращение от non-breaking space, мнемоника неразрывного пробела U+00A0. На нём браузер не переносит строку, а несколько таких пробелов подряд не схлопывает в один. Тот же символ дают записи &#160; и &#xA0;.

Чем жёсткий пробел отличается от обычного?

Жёсткий пробел — разговорное название неразрывного. По ширине он обычно не отличается от обычного, но строка на нём не разрывается, поэтому число остаётся рядом с единицей, а предлог рядом со словом.

Почему СЖПРОБЕЛЫ в Excel не убирает пробелы?

Функция удаляет только обычный пробел с кодом 32. В данных с сайтов между разрядами часто стоит неразрывный пробел с кодом 160, его сначала заменяют: =СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A2;СИМВОЛ(160);" ")).

Где нужен неразрывный пробел?

Между числом и единицей (42 км, 15 900 ₽), в группах разрядов, между инициалами и фамилией, в сокращениях вроде «т. е.», после одно- и двухбуквенных предлогов и союзов и перед тире. Телефоны удобнее защищать от переноса через CSS-свойство white-space: nowrap.

Читайте Checkroi первым в Google
Добавьте Checkroi в избранные источники — и наши разборы курсов и обзоры школ будут показываться выше в вашей выдаче Google.
Оставить комментарий
0 комментариев
Форма комментария

Оставьте комментарий

Напишите, что думаете. Нам важно ваше мнение!