CSS: выберите предыдущий брат

У меня есть список и вы хотите выбрать предыдущий и следующий из тех, что я вишу

<ul>
    <li>Item1</li>
    <li>Item1</li>
    <li>Item1</li>
    <li>Item1</li>
    <li>Item1</li>
</ul>

Я могу выбрать следующего брата с помощью селектора "+". Но есть ли возможность получить предыдущий?

ul li:hover + li {
    color:red;
}

Я уже пробовал ul li + li:hover, но он не работает. Нельзя верить, что нет сложного хака, который я мог бы использовать.

Конечно, я могу сделать это легко через Javascript, но мне не нравится использовать JS, где я могу получить тот же результат с CSS.

Ответ 1

Нет никакого способа сделать это с помощью чистого CSS, если вы действительно должны выбрать предыдущего брата, вам придется прибегать к Javascript или тому подобное.