Я использую ::selection, чтобы изменить цвет выделения, так как синий по умолчанию не работает в моей цветовой теме. Однако, когда у меня есть многострочный текст с <br> (или \n из js, который просто преобразуется в <br>), разрывы строк всегда по умолчанию синие.
<!DOCTYPE html>
<html lang = "en">
<body>
<div class = "selector">Try<br>selecting<br>me.</div>
</body>
<style>
.selector::selection {
background-color: #8d8d8d;
}
</style>
</html>Как я могу сделать все выделенный текст, включая разрывы строк, одного цвета?






Попробуй это:
<!DOCTYPE html>
<html lang = "en">
<head>
<style>
.selector::selection, .selector *::selection {
background-color: #8d8d8d;
}
</style>
</head>
<body>
<div class = "selector">Try<br>selecting<br>me.</div>
</body>
</html>Добавьте дополнительный селектор .selector *::selection в css, который будет определять все дочерние элементы внутри .selector.
<!DOCTYPE html>
<html lang = "en">
<body>
<div class = "selector">Try<br>selecting<br>me.</div>
</body>
<style>
.selector::selection,
.selector *::selection {
background-color: #8d8d8d;
}
</style>
</html>
Если он не работает, я предполагаю, что он не работает в Chrome (?), потому что он является работает в Firefox.