#html #unicode #utf-8 #meta #lang
#HTML #unicode #utf-8 #meta #lang
Вопрос:
Почему html lang=»en» требуется, если мы определяем meta charset=»utf-8″.Я имею в виду, что мы определили кодировку, так какая польза от lang?
Что я понимаю из utf-8, так это то, что он содержит символы почти всех языков сам по себе.
Комментарии:
1. UTF8 — это кодировка, а не язык. Язык — английский, французский, русский, китайский. Все это обычно используется на HTML-страницах в кодировке UTF8
Ответ №1:
Атрибут HTML lang используется для определения языка текстового содержимого в Интернете. Эта информация помогает поисковым системам возвращать результаты, зависящие от языка, а также используется программами чтения с экрана, которые переключают языковые профили для обеспечения правильного акцента и произношения. Я добавил ссылку на статью, вы можете прочитать больше:
Ответ №2:
Вы путаете кодировку с языком.
Unicode (и кодировка UTF-8) могут представлять символы почти для всех языков, вы правы, но как их представить? Шрифты должны знать язык, чтобы отображать каждый символ в родной форме. Один и тот же символ может быть написан по-разному, в зависимости от языка (обычно речь идет о лигатурах, но и символы могут быть написаны по-разному). Также в староанглийском языке иногда мы хотим, чтобы s
он был записан как a f
(без средней строки), но мы хотим записать его как s
, не используя специальный символ (в Unicode есть is для специальных целей). Но правила были только для английского языка. В других языках были другие правила.
Но язык определяет множество других частей: как писать числа (с десятичной точкой или десятичной запятой? Как писать даты? и т.д.), А также как разделить строки (слова).
Затем о читателях, и если вы хотите, чтобы браузер просматривал определение слова или просто поисковые системы.
UTF-8 — это просто кодировка, ее не следует путать с представлением текста.
Комментарии:
1. Когда я использую lang=»fr» и запускаю код (который на английском языке), он по-прежнему выдает тот же результат.
2. @S.Kumar: да, иногда это так, но это не значит, что это всегда одно и то же. Браузеры могут быть более точными (например, если требуется больший пробел после точки или нет). И JavaScript может использовать язык для форматирования, имен и чисел. Но также и виджеты. Вы просто сообщаете читателю больше информации о том, чего ожидать. Это неплохо (особенно с индийскими языками). Не все шрифты различают язык (разные символы в одной и той же кодовой точке unicode), но это также говорит нам о качестве шрифта и внимании к деталям.