Пример – http://jstn.info/html.html – гниение ссылки , пример больше недоступен.
Обратите внимание, что текст расположен по центру, а сами маркеры — нет. Как я могу выровнять маркеры, сохраняя текст/список по центру?
Пример – http://jstn.info/html.html – гниение ссылки , пример больше недоступен.
Обратите внимание, что текст расположен по центру, а сами маркеры — нет. Как я могу выровнять маркеры, сохраняя текст/список по центру?
Вы задали тот же вопрос в разделе Центрирование ‹UL› + сохранение выравнивания ‹LI› а я тебе уже ответил.
Дайте вашему div имя класса center
. Предполагая, что ширина вашего div составляет 200 пикселей, margin:0 auto
будет центрироваться, а text-align:left
будет выравнивать текст по левому краю, сохраняя его центрирование из-за автоматического поля.
.center{
width:200px;
margin:0 auto;
text-align:left;
}
margin: 0 auto; display: table;
.
- person wazz; 10.08.2017
См. https://stackoverflow.com/a/6558833/507421.
ul {
list-style-position: inside;
}
display: inline-block
на ul
может лучше справляться с центрированием так, как вы ожидаете, в зависимости от ваших потребностей.
- person Kevin Ghadyani; 17.01.2019
Проблема в том, что пули контролируются ul
, а не отдельными li
. Я не знаю чистого способа сделать это навскидку; как быстрый хак, попробуйте
ul { list-style-type: none; text-align: center; }
li::before { content: "\2022 " }
/* 0x2022 is unicode for a bullet */
Редактировать: как указывает пользователь выше меня, вы должны центрироваться в таблице стилей, а не с align
.
Чтобы уточнить, что мы на самом деле сделали здесь, это скрыли автоматически сгенерированные маркеры (путем установки list-style-type
на `none) и создали «псевдопули» перед каждым li.
Существует множество способов решить эту проблему в зависимости от потребностей пользовательского интерфейса вашего проекта.
Здесь я перечислил 3 возможных решения: https://codesandbox.io/s/r1j95pryn.
ul {
list-style-position: inside;
padding-left: 0;
}
ul {
display: inline-block;
padding-left: 0;
}
ul {
display: inline-block;
padding-left: 0;
text-align: left;
}