Как сделать так, чтобы точки у элементов li выравнивались по блоку?

Как сделать, чтобы точки выравнивались по блоку?введите сюда описание изображения

Элементы сделаны через li

<ul class="intro__list">
    <li class="intro__item"><span>Without ads and other</span></li>
    <li class="intro__item"><span>20+ servers for stable connection</span></li>
    <li class="intro__item"><span>Confidential geolocation and data</span></li>
</ul>

Ответы (2 шт):

Автор решения: Oceangrave-

как вариант

span {
  margin-left: 40px;
  padding: 0;
}

ul {
  margin-left: 10px;
  /* Отступ слева */
}
<div class="box">
  <span>asdasd</span>
  <ul>
    <li>Чебурашка</li>
    <li>Крокодил Гена</li>
    <li>Шапокляк</li>
  </ul>
</div>

→ Ссылка
Автор решения: Егор Банин

Эти точки не являются частью контента, они существуют как псевдоэлементы ::marker и отображаются слева от блока элемента списка. Изменить это, кажется, никак нельзя. Можно пытаться подогнать padding ul выравнивая точки, но это тухлая идея -- никакой гарантии, что точки не поедут в другом браузере, с другими стилями по умолчанию.

Можно схитрить и скрыть стандартные точки, и добавить свои собственные через ::before. Возможностей по управлению ::before гораздо больше и можно добиться корректного результата. Например так:

div {
  background-color: #7db;
  margin: 1em;
}
ul {
  list-style: none;
  padding: 0;
}
li::before {
  content: "•";
  float: left;
  padding: 0 0.5em 0 0;
}
span {
  display: block;
  overflow: hidden;
}
<div>
  text text text
  <ul>
    <li><span>foo</span></li>
    <li><span>bar<br>bar2</span></li>
  </ul>
</div>

Следует помнить, что эти новые маркеры могут отличаться от маркеров по умолчанию. То есть два списка со своими точками и со стандартными будут выглядеть по-разному.

→ Ссылка