<mark>

Выделяет фрагмент текста «маркером».

Время чтения: меньше 5 мин

Кратко

Скопировано

Тег <mark> выделяет или подсвечивает важный фрагмент текста. По умолчанию браузеры добавляют <mark> жёлтый фоновый цвет #ffff00 (yellow), похожий на выделение канцелярским маркером.

Пример

Скопировано
        
          
          <p>  Мы можем предложить вам на выбор  преимущественно <mark>чёрных</mark>,  <mark>белых</mark> или <mark>серых</mark>  котов. Также обратите внимание  на <mark>черепаховую</mark> кошку,  которую сложно определить  в одну из этих категорий.</p>
          <p>
  Мы можем предложить вам на выбор
  преимущественно <mark>чёрных</mark>,
  <mark>белых</mark> или <mark>серых</mark>
  котов. Также обратите внимание
  на <mark>черепаховую</mark> кошку,
  которую сложно определить
  в одну из этих категорий.
</p>

        
        
          
        
      
Открыть демо в новой вкладке

В этом примере при помощи <mark> выделены все прилагательные.

Как пишется

Скопировано

В обычном тексте с помощью <mark> можно выделить что-то связанное с текущей активностью пользователя, например, найденные слова во время поиска по тексту.

В цитатах <mark> помогает подсветить то, на что автор основного текста хочет обратить внимание.

Можно реализовать текстовый поиск, выделяя цветом найденные фрагменты.

Открыть демо в новой вкладке

Доступность

Скопировано

У <mark> есть встроенная роль mark. Хотя скринридеры не рассказывают про роль пользователям и не выделяют содержимое с помощью изменения интонации, она добавляет тегу семантический вес и потенциал с точки зрения доступности.

Чтобы тег в текущей реализации стал более доступным, нужно задействовать магию CSS — псевдоэлементы ::before, ::after и свойство content.

        
          
          mark::before {  content: " [начало выделения] ";}mark::after {  content: " [конец выделения] ";}
          mark::before {
  content: " [начало выделения] ";
}

mark::after {
  content: " [конец выделения] ";
}

        
        
          
        
      

Благодаря этому хаку пользователи узнают о выделениях в тексте, если в скринридере выбрана специальная настройка, благодаря которой технология зачитывает содержимое из content. Старайтесь использовать хак только когда это действительно нужно.

Если поддерживаете режим высокой контрастности в Windows, не забудьте задать <mark> системный цвет с помощью значения forced-colors у директивы @media. Благодаря этому цвет выделения заменится на системный и будет таким же контрастным, как остальные цвета.

        
          
          @media (forced-colors: active) {  mark {    color: HighlightText;    background-color: Highlight;  }}
          @media (forced-colors: active) {
  mark {
    color: HighlightText;
    background-color: Highlight;
  }
}