Демонстрационная версия: https://jsfiddle.net/h8uxmoj4/
ol, ul {
padding-left: 0;
}
li {
list-style: none;
padding-left: 1.25rem;
position: relative;
}
li::before {
left: 0;
position: absolute;
}
ol {
counter-reset: counter;
}
ol li::before {
content: counter(counter) ".";
counter-increment: counter;
}
ul li::before {
content: "●";
}
Поскольку исходный вопрос неясен относительно его требований, я попытался решить эту проблему в соответствии с рекомендациями, установленными другими ответами. В частности:
- Совместите маркеры списка с внешним текстом абзаца
- Выровнять несколько строк в одном элементе списка
Я также хотел найти решение, которое бы не зависело от согласования браузерами того, сколько отступов использовать. Я добавил упорядоченный список для полноты.