Можно добиться подобной сквозной нумерации для неупорядоченных списков с помощью CSS, используя псевдоэлементы и свойства `counter`. Вот пример, как это можно реализовать:
```css
ul {
list-style: none; /* Убираем стандартные маркеры списков */
counter-reset: item; /* Сбрасываем счетчик перед списком */
}
ul li {
counter-increment: item; /* Увеличиваем счетчик для каждого элемента списка */
}
ul li::before {
content: counter(item) ". "; /* Добавляем значение счетчика перед текстом элемента */
}
p {
margin-bottom: 0.5em; /* Отступ между параграфами и списками */
}
```
Для HTML-кода, который вы предоставили, можно использовать этот CSS. Пример полного HTML с применением стилей:
```html
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
ul {
list-style: none; /* Убираем стандартные маркеры списков */
counter-reset: item; /* Сбрасываем счетчик перед списком */
}
ul li {
counter-increment: item; /* Увеличиваем счетчик для каждого элемента списка */
}
ul li::before {
content: counter(item) ". "; /* Добавляем значение счетчика перед текстом элемента */
}
p {
margin-bottom: 0.5em; /* Отступ между параграфами и списками */
}
</style>
</head>
<body>
<p>Писатели:</p>
<ul>
<li>Пушкин</li>
<li>Лермонтов</li>
<li>Чехов</li>
</ul>
<p>Художники:</p>
<ul>
<li>Винсент ван Гог</li>
<li>Сальвадор Дали</li>
<li>Эдвард Мунк</li>
</ul>
</body>
</html>
```
Однако, как вы отметили, если у вас есть доступ только к CSS и HTML не может быть изменён (например, контент загружается динамически), вам нужно будет убедиться, что ваши списки находятся в правильной структуре. Например, если разные списки `ul` находятся в разделе, так как в примере, используемом выше, они будут иметь отдельные счетчики.
Если вам нужно связать все списки в один последовательный номер, потребуется немного более сложная структура, или работа с JavaScript, так как стандартный CSS ограничивает нумерацию по-подобному в рамках элемента.
Если ограничения на различные элементы не фиксированы и возможно пересекаться в пределах одних списков, тогда можно использовать JavaScript для добавления класса или непосредственно изменения разметки, чтобы решить именно вашу задачу.