Content-Language

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.

HTTP-заголовок Content-Language используется для описания языков контента доступных для аудитории, позволяя таким образом пользователю выбрать язык в соответствии со своими предпочтениями.

Например, если установлен заголовок "Content-Language: de-DE", это говорит о том, что документ предназначен для носителей немецкого языка (однако это не означает, что документ написан на немецком языке). Это может быть документ на английском языке в рамках языкового курса для носителей немецкого языка).

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

Header type Entity header
Forbidden header name no
CORS-safelisted response-header yes
CORS-safelisted request-header yes

Синтаксис

Content-Language: de-DE
Content-Language: en-US
Content-Language: de-DE, en-CA

Директивы

language-tag

Несколько языковых тегов разделяются запятыми. Каждый языковой тег представляет собой последовательность из одного или нескольких подтегов без учёта регистра, разделённых символом дефиса ("-", %x2D).

В большинстве случаев языковой тег состоит из подтега основного языка, который идентифицирует широкое семейство родственных языков (например, "en" = English), за которым дополнительно следует ряд подтегов, уточняющих или сужающих диапазон этого языка (например, "en-CA" = вариант диалекта английского языка, использующегося в Канаде).

Примечание: Языковые теги формально описаны в RFC 5646, который в свою очередь опирается на стандарт ISO 639 (точнее на ISO 639-1 code list) в части перечня используемых language codes.

Примеры

Указание использованного языка документа

Глобальный атрибут lang используется на HTML-элементах для указания языка всего HTML документа или его частей.

html
<html lang="de"></html>

Не используйте этот мета элемент как здесь для констатирования языка документа:

html
<!-- /!\ Это плохая практика -->
<meta http-equiv="content-language" content="de" />

Указание целевой аудитории для ресурса

Content-Language заголовок используется для определения целевой аудитории страницы и может указывать на более чем 1 язык.

Content-Language: de, en

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

Спецификация Заголовок
RFC 7231, раздел 3.1.3.2: Content-Language Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content

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

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Content-Language

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

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