Когда видны пробелы

«Когда видны пробелы» — вопрос из категории CSS, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Пробелы видны в HTML, когда они находятся между inline или inline-block элементами. Это происходит потому что браузер интерпретирует пробелы и переносы строк в исходном коде как текстовые узлы.

Пример:

<div>
  <span>One</span>
  <span>Two</span>
</div>

Между <span> будет виден пробел.

Способы устранения:

  1. Убрать пробелы в HTML:
<div><span>One</span><span>Two</span></div>
  1. Использовать font-size: 0 у родителя:
div { font-size: 0; }
span { font-size: 16px; }
  1. Комментарии между элементами:
<div>
  <span>One</span><!--
  --><span>Two</span>
</div>
  1. Flexbox или inline-block с отрицательным margin.