Какиезначение атрибута следует использовать для страницы со смешанным языком? - PullRequest
48 голосов
/ 16 августа 2011

Я обычно использую это: <html lang="en">.

Однако я работаю над сайтом, который будет использовать два языка и смешивать их иногда в одном предложении или заголовке.

Как будет выглядеть приведенный выше код в этом случае? Могу ли я использовать <html lang="lang1 lang2">?

Ответы [ 3 ]

77 голосов
/ 16 августа 2011

Насколько я могу судить по чтению спецификации HTML5, атрибут lang:

должен быть допустимым языковым тегом BCP 47 или пустой строкой

Источник: http://www.w3.org/TR/html5/dom.html#the-lang-and-xml:lang-attributes

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

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

Поскольку атрибут lang действителен для всех элементов HTML, вы можете заключить свой код для конкретного языка в новый тег, чтобы указать егоязык.

<html lang="en">
[...]
<body>
<h1>I am a heading <span lang="de-DE">Eine Überschrift</span></h1>
</body>
</html>
3 голосов
/ 18 декабря 2016

Насколько я понимаю, вы можете использовать <html lang="mul"> для обозначения Несколько языков .

Выберите вложенные теги из реестра языковых вложенных тегов IANA.

Источник; https://www.w3.org/TR/2007/NOTE-i18n-html-tech-lang-20070412/#ri20030112.224623362

В списке есть подтэг с именем Подтег: mul

Источник: http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

Однако я не думаю, что вы сможете точно указать, какие языки вы смешиваете в элементе html. Однако, как писал Джейми, вы можете указать разные атрибуты lang для разных элементов на странице.

В ИСО 639-3 существует четыре специальных языковых кода, и все они также действительны в реестре подтегей IANA; https://en.wikipedia.org/wiki/ISO_639-3#Special_codes

Однако я сомневаюсь, что это хорошо поддерживается поисковыми системами, такими как Google.

0 голосов
/ 10 апреля 2017

Вы можете использовать как это.

Для HTML 5 используйте:

См. «Объявление кодировки символов в HTML» для получения дополнительной информации о кодировке символов.

...