Задать вопрос

Почему появляется странный отступ при «display: inline-block» и «font-size: 0»?

Привет. Возникла проблема. Есть контейнер со следующими стилями:
ul {
  font-size: 0;
  background: red;
  line-height: 80px;
}

Внутри него находится несколько объектов с такими стилями:
ul > li {
  display: inline-block;
  font-size: 16px;
  background: yellow;
  line-height: inherit;
}


Вот пример на codepen: пример.

Как вы видите, снизу появился отступ в несколько пикселей. Помогите пожалуйста убрать этот отступ.
  • Вопрос задан
  • 1734 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
Elwen
@Elwen
Не используйте line-height для указания высоты ul.
ul {
  background: red;
  height: 80px;
}
ul > li {
  display: inline-block;
  font-size: 16px;
  background: yellow;
  line-height: 80px;
}
Ответ написан
@quramolt
То, что вы хотите сделать, можно решить несколькими способами:

1. Вот, например вариант с использованием одинаковых паддингов
Codepen

2. Ещё вариант c установкой height = line-height
Codepen
Тут, кстати, высота списка действительно будет 80 пикселей.

3. И вот неплохая статья по поводу многих способов центрирования centering-css-complete-guide по-русски

4. А ещё можно про flexbox`ы почитать
Ответ написан
Комментировать
@Vmenvmass
Все получилось, помог вот этот вариант посмотреть
Применил его на своём сайте о татуаже
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы