Кратко
Скопировано:
— псевдоэлемент, который применяется к тексту, найденному через текстовый фрагмент в URL вида #
. Он позволяет задать стили выделения, которые браузер покажет после перехода по такой ссылке.
Пример
Скопировано<p> Пример ссылки на <a href="#:~:text=целевой%20текст">целевой текст</a> на этой же странице.</p>
<p> Пример ссылки на <a href="#:~:text=целевой%20текст">целевой текст</a> на этой же странице. </p>
::target-text { background-color: yellow; color: black; text-shadow: none;}
::target-text { background-color: yellow; color: black; text-shadow: none; }
Как пишется
СкопированоЗапись простая:
::target-text { /* стили */ }
::target-text { /* стили */ }
Работает совместно с механизмом текстовых фрагментов в URL. Пример ссылки:
<a href="https://example.com/page#:~:text=целевой%20текст">Перейти к целевому тексту</a>
<a href="https://example.com/page#:~:text=целевой%20текст">Перейти к целевому тексту</a>
Как понять
СкопированоСтандартные якоря #id
подсвечивают целевой элемент. Текстовые фрагменты #
указывают на конкретную строку текста. :
позволяет настраивать стиль этого автоматического выделения (обычно это жёлтая подсветка от браузера), чтобы он соответствовал дизайну.
Подсказки
Скопировано💡 Ставьте высококонтрастные и ненавязчивые стили (background
, color
), чтобы выделение было заметно, но не мешало чтению.
💡 Не опирайтесь на :
для критичных сценариев: пользователи могут открыть страницу без текстового фрагмента в URL, а поддержка в некоторых браузерах отсутствует.
💡 Комбинируйте с анимацией/переходом, если хотите плавное затухание выделения: transition
.
- Chrome 89, поддерживается
- Edge 89, поддерживается
- Firefox 131, поддерживается
- Safari 18.2, поддерживается