<meta> - элемент для описания метаданных

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

HTML-элемент <meta> представляет такие метаданные, которые не могут быть представлены другими HTML-метатегами, такими как <base>, <link>, <script>, <style> или <title>.

Категории контента Мета данные. Если задан itemprop атрибут: flow content, phrasing content.
Допустимое содержимое Отсутствует - это пустой элемент.
Пропуск тегов Так как это пустой элемент, то открывающий тег должен присутствовать, а закрывающий - отсутствовать.
Допустимые родители <meta charset>, <meta http-equiv>: <head> элемент. Если http-equiv это не заявленная декларация, то может быть внутри элемента <noscript> или <head>.
Допустимые ARIA-роли Отсутствуют
DOM-интерфейс HTMLMetaElement

Атрибуты

Этот элемент включает в себя глобальные атрибуты.

Примечание: Атрибут name имеет особое значение для элемента <meta> и атрибут itemprop не должен быть задан в <meta> элементе в котором уже определены какие-либо name, http-equiv или charset атрибуты.

charset

Этот атрибут задаёт кодировку символов, используемую на странице. Он должен содержать стандартное имя IANA MIME для кодировки символов. Хотя стандарт не требует определённой кодировки, он рекомендует:

  • Авторам рекомендуется использовать UTF-8.
  • Не следует использовать ASCII-несовместимые кодировки, чтобы избежать угроз безопасности: браузеры, не поддерживающие их, могут интерпретировать вредоносный контент как HTML. Это относится к семейству кодировок JIS_C6226-1983, JIS_X0212-1990, HZ-GB-2312, JOHAB и EBCDIC.

    Примечание: ASCII-несовместимые кодировки - это те, которые не преобразуют 8-битные коды точек 0x20, 0x7E, 0x0020, 0x007E в коды Unicode точек.

    Предупреждение:

    • Авторы не должны использовать CESU-8, UTF-7, BOCU-1 и/или SCSU, так как есть примеры атак межсайтового скриптинга использующих данные кодировки.
    • Авторам не следует использовать кодировку UTF-32, потому что не все алгоритмы кодирования HTML5 могут отличить её от UTF-16. Примечание:
    • Указанный набор символов должен соответствовать одной странице. Нет веских оснований для объявления неточного набора символов.
    • <meta> элемент должен находиться внутри элемента <head> и задаваться в 1024 первых байтах HTML страницы, поскольку некоторые браузеры смотрят только эти байты перед выбором кодировки.
    • Этот <meta> элемент - часть алгоритма, определяющего набор символов (algorithm to determine the character set) страницы, который браузер поддерживает. Заголовок Content-Type и любые Byte-Order Marks элементы переопределяют данный элемент.
    • Настоятельно рекомендуется определить кодировку символов. Если для страницы не определён набор символов, то некоторые cross-scripting технологии могут повредить страницу, например такие как UTF-7 fallback cross-scripting technique. Постоянная установка этого элемента будет защищать вас от этого риска.
    • Этот <meta> элемент это синоним для pre-HTML5 <meta http-equiv="Content-Type" content="text/html; charset=IANAcharset"> где *IANAcharset *соответствует значению эквивалентного charset атрибута. Этот синтаксис по-прежнему разрешён, хотя и устарел и больше не рекомендуется.
content

Этот атрибут содержит значение для http-equiv или name атрибута, в зависимости от контекста.

http-equiv

Этот атрибут определяет прагму, которая может изменять поведение серверов и пользователей. Значение прагмы определяется с помощью content и может быть следующим:

"content-language"

Эта прагма определяет значение языка страницы по умолчанию.

Примечание: Не используйте эту прагму, так как она устарела Используйте глобальный атрибут <html> элемента вместо этого.

"Content-Security-Policy"

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

"content-type"

Этот атрибут определяет MIME type документа. За ним следует синтаксис такой же как и в поле заголовка объекта содержимого HTTPI, однако как и внутри HTML-элемента, большинство этих значений не доступно. Поэтому допустимым синтаксисом для его содержимого является литеральная строка 'text/html', за которой следует набор символов со следующим синтаксисом: '; charset=IANAcharset' где IANAcharset это предпочтительное MIME имя для набора символов, который определяется какIANA.

Примечание: Не используйте эту прагму, так как она устарела. Используйте атрибутcharset в элементе <meta> вместо этого. <meta> не может быть использована для выбора типа документа в XHTML документе, или в HTML5 документе, за которым следует XHTML синтаксис, никогда не задавайте MIME тип как XHTML MIME. Это будет некорректно. Только HTML документ может использовать контент-тип, так что большинство из них являются неиспользуемыми, поэтому они являются устаревшими и заменяются charset атрибутом.

"default-style"

Специализация этой прагмы - предпочтительный стиль таблиц, используемый на странице. content атрибут должен содержать заголовок <link> элемента который href связывает атрибут с CSS таблцей стилей, или заголовок <style> элемента, который содержит CSS таблицу стилей.

"refresh"

Эта прагма определяет:

  • Количество секунд перезагрузки таблицы, если content атрибут содержит только целое положительное число;
  • Время, в количестве секунд, за которое страница должна быть перенаправлена на другую, если content атрибут содержит целое положительное число, заканчивающийся строкой ';url=' и корректный URL.

Эта прагма определяет cookie для страницы. Её содержимое должно заканчиваться синтаксисом, определяемым IETF HTTP Cookie Specification.

Примечание: Не используете эту прагму, так как она устарела. Используйте HTTP header set-cookie вместо этого.

name

Этот атрибут определяет имя уровня документа метаданных. Его не следует устанавливать, если один из атрибутов itemprop, http-equiv или charset также указан в наборе. Имя этого документального уровня метаданных связано со значением, которое содержится в content атрибуте.Допустимые значения для имени элемента, со связанными с ними значениями, хранятся посредством content атрибута:

  • application-name, определяет имя веб-приложения, запущенного на веб-странице;

    Примечание: Браузеры могут использовать его для идентификации приложения. Он отличается от <title> элемента, который обычно состоит из имени приложения, но также может содержать специальную информацию, как например имя документа или статус. Простые веб-страницы не определяют application-name meta.

  • автор определяет в свободном формате имя автора документа;
  • описание, содержащее краткое и точное резюме содержания страницы. В некоторых браузерах, среди которых Firefox и Opera, этот мета используется как описание страницы по умолчанию в закладке;
  • генератор, содержащий в свободном формате идентификатор программного обеспечения, создавшего страницу;;
  • Ключевые слова, представленные строками, разделёнными запятыми, связанные с содержанием страницы
  • referrer Экспериментальная возможность контролирует содержимое HTTP. Referer HTTP - заголовок, прикреплённый к любому запросу, отправленному из этого документа:
    no-referrer Не отправлять HTTP Referer заголовок.
    origin Отправить оригинал.
    no-referrer-when-downgrade Отправить оригинал, как ссылку по умолчанию на безопасный пункт (https->https), но не отправлять ссылку на менее безопасную структуру (https->http). Это поведение по умолчанию.
    origin-when-crossorigin Отправляет полный URL (удалённый из параметров) при выполнении запроса с тем же источником, или только оригинал документа в других случаях.
    unsafe-URL Отправляет полный URL (удалённый из параметров), при выполнении запроса того же или перекрёстного происхождения.

    Примечание: Некоторые браузеры поддерживают ключевые слова всегда, по умолчанию и никогда для реферера. Эти значения устарели.

    Примечание: Динамическая вставка <meta name="referrer"> (с помощью document.write или appendChild) создаёт недетерминизм, когда дело доходит до отправки рефереров. Также стоит отметить, что когда определяется несколько конфликтующих политик, применяется No-referrer policy.Атрибут также может иметь значение, взятое из существующего листа определений WHATWG Wiki MetaExtensions page. Хотя ни один из них официально не был принят, в число предложений входят несколько часто используемых имён:

  • creator, определят в свободном формате имя создателя документа. Это также может быть имя института. Если же имён больше чем одно, то несколько <meta> элементов должны быть использованы;
  • googlebot, синоним robots, но только следует за Googlebot, сканирует индексы для Google;
  • publisher, определяет в свободном формате имя того, кто опубликовал документ. Это также может быть имя института;
  • robots, определяет поведение, поисковых роботов на странице. Список этих значений представлен ниже:
    Значение Описание Используется
    index Позволяет роботу индексировать страницу All
    noindex Освобождает робота от индексирования страниц All
    follow Позволяет роботу переходить по ссылкам со страницы All
    nofollow Запрещает роботу переходить по ссылкам со страницы All
    none Эквивалентно noindex, nofollow Google
    noodp Запрещает использование Open Directory Project описания, если таковые имеются, как описание страницы на странице результатов поиска Google, Yahoo, Bing
    noarchive Запрещает поисковой системе кешировать содержимое страницы. Google, Yahoo, Bing
    nosnippet Запрещает отображение любого описания страницы на странице результатов поиска Google, Bing
    noimageindex Запрещает отображение этой страницы в качестве ссылающейся страницы индексированного изображения. Google
    nocache Синоним noarchive Bing

    Примечание: Только кооперативные роботы будут следовать правилам, определённым именем роботов. Роботу необходимо получить доступ к странице, чтобы считать мета значение. Если вы хотите скрыть от них информацию, то используйте robots.txt файл. Если вы хотите удалить страницу индекса, изменение мета в noindex будет работать, но только тогда, когда робот снова посетит страницу. Убедитесь, что файл robots.txt не предотвращает такие посещения. Некоторые поисковые системы имеют инструменты, позволяющие быстро удалить какую-либо страницу. Некоторые возможные значения взаимно исключают друг друга, такие как использование индекса и noindex или follow и nofollow одновременно. В этих случаях поведение робота не определено и может варьироваться от одного к другому. Поэтому избегайте этих случаев. Некоторые поисковые роботы-роботы, такие как Google, Yahoo Search или Bing, поддерживают те же значения в директиве HTTP, X-Robot-Tags: это позволяет им использовать эту прагму для документов, отличных от HTML, например изображений.

  • slurp,синоним robots, но следует только за Slurp, индексирующим роботом от Yahoo Search;Наконец несколько общих терминов:
    • viewport, который даёт подсказки о размере изначального размера viewport. Эта прагма используется только на некоторых мобильных устройствах.
    Значение Допустимые значения Описание
    width целое положительное число или литерал device-width Определяет ширину области просмотра в пикселях
    height целое положительное число или литерал device-height Определяет высоту области просмотра в пикселях
    initial-scale положительное число между 0.0 и 10.0 Определяет соотношение между шириной устройства и размером области просмотра
    maximum-scale положительное число между 0.0 и 10.0 Определяет максимальное значение зума; должен быть больше или равен минимальному масштабу или быть неопределённым.
    minimum-scale положительное число между 0.0 и 10.0 Определяет минимальное значение зума; должен быть меньше или равен максимальному масштабу или быть неопределённым.
    user-scalable булевское значение (да или нет) Если весь набор содержит значения нет, то пользователю не доступен зум на веб-странице. По умолчанию задано значение да.

    Примечание: Хотя и не стандартизирован, этот атрибут используется разными мобильными браузерами, например Safari Mobile, Firefox for Mobile or Opera Mobile. Значения по умолчанию могут быть изменены у разных браузеров или устройств.. Для изучения этой прагмы на Firefox for Mobile, посмотрите статью this article.

scheme

Этот атрибут определяет схему, которая описывает метаданные. Схема - это контекст, ведущий к правильной интерпретации content значения, например формата.

Примечание: Не используйте этот атрибут, так как он устарел. Для него нет никакой замены, поскольку реально он не использовался. Опустите его.

Замечания

В зависимости от установленных атрибутов, тип метаданных может быть одним из следующих:

  • Если в наборе name, то это document-level metadata, применяемая ко всей странице.
  • Если в набореhttp-equiv , то это pragma directive, то есть информация, веб-сервер предоставляет информацию о том, как должна обслуживаться веб-страница.
  • Если в наборе charset, то это charset declaration, то есть кодировка, используемая для сериализованной формы веб-страницы.
  • Если в наборе itemprop, то это user-defined metadata, прозрачна для агента пользователя, поскольку семантика метаданных зависит от пользователя. Экспериментальная возможность

Пример

html
<!-- В HTML5 -->
<meta charset="utf-8" />

<!-- Переход на другую страницу через три секунды -->
<meta http-equiv="refresh" content="3;url=https://www.mozilla.org" />

Спецификации

Specification
HTML Standard
# the-meta-element

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также