Есть ли размеры у пробелов

Ответ

В HTML пробелы и переносы строк по умолчанию схлопываются в один пробел. Однако их размер можно контролировать:

  1. Обычный пробел ( ) - зависит от шрифта (обычно ~1/4 em)
  2. Неразрывный пробел ( ) - фиксированный, не схлопывается
  3. Различные Unicode пробелы (например,  ,  ) с разной шириной

Пример:

<p>Hello&nbsp;world</p> <!-- Неразрывный пробел -->
<p>Hello world</p> <!-- EN Space (1/2 em) -->
<p>Hello world</p> <!-- EM Space (1 em) -->

В CSS можно управлять пробелами через white-space и задавать конкретные отступы через margin/padding.

Ответ 18+ 🔞

Да ты посмотри, какие тут у нас, блядь, тонкости в HTML! Прямо как в аптеке, сука. Берёшь обычный пробел — а он тебе, зараза, схлопывается, как дешёвая бутылка, если их несколько подряд. Ну и что с этим делать, спрашивается?

А делать, оказывается, можно овердохуища всего! Смотри сюда, не зевай:

  1. Обычная шпана — просто пробел. Ширина у него плавающая, от шрифта зависит. Как девушка после праздников, блядь.
  2. Крутой пацан&nbsp;. Это неразрывный пробел, ёпта. Его не схлопнешь, он стоит насмерть, как мудак в очереди. Между словами вставил — они вместе нахуй, до конца строки.
  3. Разнокалиберная братва — всякие Unicode-пробелы. Вот &ensp; — это половинчатый (en space), а &emsp; — уже полный (em space). Как будто хуи разные по размеру подбираешь для разных дырок, понимаешь?

Вот тебе пример, чтобы в голове не ебётся:

<p>Hello&nbsp;world</p> <!-- Это чтоб "Hello world" не разлучали, сука! -->
<p>Hello world</p> <!-- А тут пробел пошире, на пол-емя -->
<p>Hello world</p> <!-- А тут уже на целый ем, чтоб наверняка! -->

Но и это, блядь, не всё! Если тебе мало этого цирка с символами, есть же CSS, мать его! Там свойство white-space — им можно приказать тексту: «Не схлопывайся, уёбок!» (pre или pre-wrap). А если надо просто отодвинуть одно от другого — так бери нормальные инструменты, margin или padding, и не выёбывайся с пробелами!

Вот так-то, блядь. Казалось бы, пробел — хуйня. Ан нет, целая наука, в рот меня чих-пых!