/
Вопросы и ответы
/
CSS
/

Как расположить список горизонтально css

Как расположить список горизонтально css

5 лет назад

Человек-Молекула

Ответы

0

Для того что бы расположить список (/) элементов в линию можно применить один из ниже приведенных способов.

1
2
3
4
5
6
7
<ul>
  <li>123</li>
  <li>456</li>
  <li>789</li>
  <li>1011</li>
  <li>1213</li>
</ul>

Вариант №1

Изменить свойство display у тега на inline. Тем самым изменить способ показа элемента в документе с блочного на строчный, после этого -теги станут в ряд, и контент внутри них будет занимать столько места, сколько требуется для отображения

1
2
3
ul li {
  display: inline;
}

Вариант №2

Использовать flexbox. Аналогично предыдущему примеру изменить свойство display на flex, в родительском контейнере тегов li - в данном случае в , после чего они встанут в ряд.

1
2
3
ul {
  display: flex;
}

4 года назад

Вячеслав Межуревский

0

Чтобы пункты списка встали в строку, сделайте <ul> флекс-контейнером:

1
2
3
4
5
6
7
.menu {
  display: flex;
  gap: 24px;
  list-style: none;
  margin: 0;
  padding: 0;
}

gap задаёт расстояние между пунктами. list-style: none убирает маркеры, padding: 0 — отступ слева, который браузер добавляет спискам по умолчанию.

Выравнивание пунктов

1
2
3
4
5
.menu {
  display: flex;
  justify-content: space-between;   /* разнести по всей ширине */
  align-items: center;              /* выровнять по вертикали */
}
justify-contentРасположение
flex-startприжаты влево
centerпо центру
flex-endприжаты вправо
space-betweenкрайние у краёв, остальные равномерно

Перенос на новую строку

Если пунктов много и они не помещаются:

1
2
3
4
5
.menu {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;   /* между строками и между пунктами */
}

Через inline-block

Старый способ без флексбокса:

1
2
3
4
.menu li {
  display: inline-block;
  margin-right: 24px;
}

Между элементами inline-block появляется лишний пробел из-за переносов строк в HTML. Флексбокс такой проблемы не имеет.

Ссылки в ряд без списка

Ссылки без списка оберните в <nav> и сделайте его флексом:

1
2
3
4
<nav class="links">
  <a href="/">Главная</a>
  <a href="/courses">Курсы</a>
</nav>

Для меню сайта чаще используют список <ul> внутри <nav>: программы экранного доступа объявляют число пунктов.

Флексбокс и навигацию разбирают на курсе «Профессиональная верстка».

21 день назад

Никита Вихров

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845