Для удобства пользователя, браузеры применяют специальные стили к выделенному тексту. Данные стили могут нарушать дизайн, смотреться не гармонично в верстке, и потому нужно иметь возможность изменить или убрать данный эффект.
В моих проектах я сталкиваюсь с необходимостью устранения данной встроенной стилизации для элементов, выполняющих роль -переключателей, кнопок, созданных из не стандартных элементов форм, а запрограммированных для этого элементов html.
В CSS есть специальный псевдокласс, который управляет стилем выделенного фрагмента:
1 2 3 |
div::selection { background-color: transparent; } |
В примере выше, показано как сделать фон выделения прозрачным, невидимым.
Данный псевдокласс поддерживает ограниченный набор CSS свойств. Вот их перечень:
- color
- background-color
- cursor
- caret-color
- outline and its longhands
- text-decoration and its associated properties
- text-emphasis-color
- text-shadow