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

Ответ

В HTML неразрывный пробел создаётся с помощью специального символа   (от англ. non-breaking space). Он предотвращает перенос строки в этом месте.

Пример:

<p>Это&nbsp;неразрывный&nbsp;пробел</p>

Особенности:

  1. Браузер не сможет перенести строку между словами, соединёнными &nbsp;
  2. Часто используется для:
    • ФИО (Иван Иванович Иванов)
    • Сокращений (т. д.)
    • Числовых значений с единицами (100 км)

Альтернатива в CSS - свойство white-space: nowrap, но оно применяется к блоку целиком.

Ответ 18+ 🔞

А, ну это ж классика, блядь! Сейчас объясню, как эти ваши неразрывные пробелы работают, чтобы слова не разбегались, как тараканы от света.

Вот смотри, в HTML, если тебе надо, чтобы «Иван Иванович» не разорвало на две строки, как последнего пидораса, ты пишешь &nbsp;. Это типа пробел, но с характером, ёпта! Браузер на него смотрит и понимает: «Ага, тут хуй с горы — не переносить».

Вот тебе пример кода, смотри, не моргай:

<p>Это&nbsp;неразрывный&nbsp;пробел</p>

И что мы имеем в сухом остатке, блядь?

  1. Браузер не сможет воткнуть перенос строки между словами, которые склепаны этим &nbsp;. Они будут держаться друг за дружку, как два пьяных деда у подъезда.
  2. Где это говно применять? Да везде, где нехуй разрывать!
    • ФИО всякие (Петров Иван Сидорович) — чтобы Сидорович не остался один в следующей строке, сиротой.
    • Сокращения (т. д., и т. п.) — чтоб точка от «т» не отъехала.
    • Циферки с единицами (100 км/ч) — а то получится «100» в конце строки, а «км/ч» уже в начале следующей, и все ебут мозг, что за хуйня.

Альтернатива? Ну да, есть, блядь. В CSS можно навесить white-space: nowrap на целый блок. Но это как из пушки по воробьям — всё, что внутри, превратится в одну сплошную строку, которую похуй где обрезать. Так что &nbsp; — точечное оружие, хитрая жопа, а не дубина.