- Объявление языка в HTML
- Вопрос
- Краткий ответ
- Детали
- Основы
- Выбор корректного атрибута
- Что, если содержимое элемента и значения его атрибутов на разных языках?
- Что если нет подходящего элемента для того, чтобы прицепить атрибут языка?
- Выбор значений языка
- Дополнительная информация
- Указание метаданных о языке аудитории
- Различные вещи, которые не относятся к делу
- Не работает русский язык в шаблоне
- HTML Глобальный атрибут lang
- Синтаксис
- Значения
- Значение по умолчанию
- Применяется к тегам
- Различия между HTML 4.01 и HTML5
- Работа с языком в HTML (руководство)
- Почему следует прочесть это руководство?
- В двух словах
- Зачем объявлять язык?
- Как объявить язык страницы или элемента
- Работа с языковыми тэгами
- Установка языковых настроек браузера
- Использование информации о языке для стилизации документа
Объявление языка в HTML
Целевая аудитория: HTML кодеры, веб-разработчики (PHP, JSP, и т. д.), менеджеры веб-проектов, а также все, кто хочет лучше понимать, как объявлять язык текста на веб-странице.
Вопрос
Как установить язык содержимого моей HTML страницы?
Краткий ответ
Всегда используйте языковой атрибут тэга html для объявления языка по умолчанию на странице. Если страница содержит контент на другом языке, добавляйте языковой атрибут к элементам, окружающим этот контент.
Используйте lang атрибут для HTML страниц и xml:lang атрибут для страниц XML. Для XHTML 1.x и документов HTML5 Polyglot используйте оба атрибута вместе.
Используйте языковые тэги из IANA Language Subtag Registry . Вы можете найти тэги также с помощью Language Subtag Lookup.
Используйте вложенные элементы для того, чтобы позаботиться о контенте и значения атрибутов для одинаковых элементов на разных языках.
Детали
Основы
Всегда используйте языковой атрибут элемента html . Он наследуется всеми другими элементами, и поэтому для текста в head элементе документа будет задан язык по умолчанию.
Обратите внимание, что предпочтительнее использовать html элемент, чем body , так как body элемент не включает в себя текст из head элемента.
Если у вас есть какой-либо контент на странице, язык которого отличается от заданного в языковом атрибуте элемента html , добавляйте языковые атрибуты к элементам окружающим такой контент. Это позволит вам отображать или обрабатывать его различным образом.
С некоторыми частями кода у вас могут возникнуть проблемы. Если у вас есть мультиязычный текст в элементе title , вы не сможете разметить текст, содержащий разные языки, потому что title атрибут поддерживает только символы, а не разметку. То же самое относится к нескольким языкам в значениях атрибутов. На текущий момент эффективное решение этой проблемы отсутствует.
Выбор корректного атрибута
Если ваш документ HTML (то есть обрабатывается, как text/html ), используйте lang атрибут для установки языка документа или блока текста. Например, следующий код установит французский языком по умолчанию:
Когда XHTML 1.x или страницы Polyglot обрабатываются, как text/html , используйте оба атрибута lang и xml:lang вместе каждый раз, когда вы хотите объявить язык. Атрибут xml:lang — это стандартный способ объявления языковой информации в XML. Убедитесь, что значения обоих атрибутов идентичны.
Атрибут xml:lang не особо полезен для обработки HTML файлов, но он будет перекрывать значение lang атрибута каждый раз, когда вы обрабатываете документ, как XML. Атрибут lang разрешен синтаксисом XHTML и может быть распознан браузерами. Однако, когда используются другие синтаксические анализаторы XML (например, функция lang() в XSLT), вы не можете полагаться на то, что атрибут lang будет распознан.
Если вы обрабатываете ваш документ, как XML (то есть используете MIME type application/xhtml+xml ), то атрибут lang не нужен, будет достаточно атрибута xml:lang .
Что, если содержимое элемента и значения его атрибутов на разных языках?
Иногда язык текста в атрибутах и язык непосредственно контента элемента различаются. Например, в правом верхнем углу этой статьи расположен список ссылок на другие переводы данной страницы. Текст ссылки отображает язык целевой страницы, но связанный title атрибут содержит подсказку на языке текущей страницы:
Если ваш код выглядит, как указано ниже, то атрибут языка указывает, что испанский — не только язык контента, но и title текста. Это, очевидно, некорректно.
Вместо этого, перенесите языковой атрибут в другой элемент, как показано в данном примере, в котором span элемент наследует en язык по умолчанию, установленный у html элемента.
Что если нет подходящего элемента для того, чтобы прицепить атрибут языка?
Если вы хотите указать язык контента, но вокруг него нет никакой разметки, используйте такой элемент, как span или div . Вот пример:
You’d say that in Chinese as 中国科学院文献情报中心 .
Выбор значений языка
Чтобы быть уверенными, что юзер агенты распознают указанный вами язык, вам следует придерживаться стандартизированному подходу при указании значений атрибутов языка. Вам также необходимо подумать о том, как стандартизированно ссылаться на различные диалекты одного языка, например, такие, как американский и британский английский, которые существенно отличаются своим написанием и произношением.
Правила создания языковых атрибутов описываются IETF спецификацией, которая называется BCP 47. Помимо описания использования простых тэгов языка таких, как en (английский) или fr (французский), BCP 47 описывает, как сочетать языковые тэги, что позволяет вам указывать региональные диалекты, скрипты и другие варианты, относящиеся к данному языку.
BCP 47 включает в себя, но выходит за рамки ISO списков кодов языков и стран. Чтобы найти подходящий код, вам нужно обратиться к IANA Language Subtag Registry .
Неофициальная утилита Language Subtag Lookup предоставляет удобный фронтенд инструментарий для IANA registry.
Для краткого, но достаточно тщательного ознакомления с синтаксисом тэгов BCP 47, читайте Языковые тэги в HTML и XML . Если необходима помощь в выборе корректного языкового тэга из множества возможных тэгов и комбинаций, смотрите Выбор тэга языка .
Дополнительная информация
Указание метаданных о языке аудитории
Если вы хотите создать метаданные, описывающие скорее язык целевой аудитории страницы, чем язык определенной части текста, реализуйте это с помощью отправки сервером информации в HTTP заголовке Content-Language . Если ваша целевая аудитория говорит более, чем на одном языке, HTTP заголовок позволяет вам использовать список языков, разделённых запятыми.
Это пример HTTP заголовка, объявляющего ресурс смесью английского, хинди панджаби языков:
Content-Language: en, hi, pa
Обратите внимание, что этот подход не сработает, если страница загружается с жесткого диска, CD или другого источника, не являющегося сервером. В настоящее время нет широко распространенного способа использования таких метаданных внутри страницы.
В прошлом многие люди использовали meta элемент с атрибутом http-equiv со значением Content-Language . Из-за давних путаниц и непоследовательных реализаций этого элемента HTML5 спецификация сделала его несоответствующим стандартам HTML, так что вам больше не следует использовать этот элемент.
Для обратной совместимости, HTML5 описывает алгоритм, с помощью которого язык контента может быть определён из HTTP или meta Content-Language информации при определённых условиях. Как бы то ни было, это только запасной механизм для случаев, когда языковой атрибут отсутствует у html тэга. Если вы используете атрибут языка для html , что следует делать всегда, подобные запасные пути бесполезны.
Для подробной информации о Content-Language в HTTP и meta элементах читайте HTTP и meta для информации о языке .
Различные вещи, которые не относятся к делу
Вероятно, стоит упомянуть ещё несколько моментов, которые не имеют отношения к этой дискуссии.
Первое, невозможно объявить язык с помощью CSS.
Второе, DOCTYPE , с которого должен начинаться любой HTML может содержать то, что выглядит для некоторых людей, как объявления языка. DOCTYPE в примере ниже содержит текст EN, что означает ‘English’. Это, тем не менее, указывает на язык schema (схемы), связанной с данным документом – это никоим образом не указывает на непосредственно язык самого документа.
Третье, иногда люди предполагают, что информация о естественном языке может быть получена из кодировки символов. Тем не менее, кодировка символов не позволяет однозначно идентифицировать естественный язык. Должно быть взаимно однозначное сопоставление между кодировкой и языком, чтобы это сработало, а его нет. Одна кодировка может быть использована многими языками, например Latin 1 (ISO-8859-1) используется и французским, и английским, а ещё многими другими языками. В дополнение, кодировка может отличаться в рамках одного языка, например арабский может использовать ‘Windows-1256’ или ‘ISO-8859-6’ или ‘UTF-8’.
Все эти примеры кодировок спорны, так как весь контент сегодня должен быть создан в UTF-8, который охватывает все, кроме самых редких, языки.
В некоторых текстах, таких, как арабский и иврит, отображаемый текст читается в основном справа налево, хотя числа и иностранные термины отображаются слева направо. Необходима разметка, такая, как dir атрибут, для объявления right-to-left содержания. И в некоторых случаях разметка необходима для правильного отображения двунаправленного текста, но это невозможно сделать с помощью разметки языка.
То же самое относится к направлению текста. Как и в случае с кодировками, не всегда существует соответствие между языком и текстом, в том числе его направлением. Например, азербайджанский может быть записан справа налево (арабская письменность) и слева направо (латиница и кириллица), соответственно код языка az может относится к обоим вариантам. Дополнительно, разметка направления текста применяет к тексту целый ряд различных значений, в то время, как язык является простым переключателем, который не соответствует поставленным задачам.
Источник
Не работает русский язык в шаблоне
Напишите как нужно правильно.
Добавлено через 1 минуту
Да, на название не обращайте внимания) Просто курсовая работа такая)
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Не работает русский язык в шаблоне
Помогите, я учусь на информационные системы, взял тему для квалификационной работы связанную с.
Не работает русский язык в шаблоне — HTML, CSS,
Необходимо исправить поддержку русского языка, изменения произвести в каталоге Style-2. Шаблон во.
В шаблоне не отображается русский язык!
Скачал шаблон , все на анг языке. когда хочу поменять, например название меню, русский не.
Изменить язык в шаблоне
Здравствуйте! Скачала данный шаблон.
Не сработало. Даже сам файл перекодировал.
Добавлено через 10 минут
А вот пример простого шаблона на русском
приветствую всех форумчан. Подскажите пожалуйста, решил создать сайт на базе скачанного шаблона. Но проблема в вводе текста на русском. Вот кодировка, прошу помощи, что убрать или отредактировать
Это как пример.
Но я далеко не мастер в этом деле)
Добавлено через 2 часа 40 минут
Да. Что касательно исчезновений, внимательно смотри что у тебя написано в html коде. Если ты поменял код в index.html, это не значит что в services.html будет тоже самое. Каждую страницу нужно редактировать. Но думаю, ты это и так знал
Русский язык и шаблон
Добрый день, уважаемые читатели и гуру форума. Скачал шаблон, хотел посмотреть что можно из него.
Не показывает русский язык
Подскажите пожалуйста, почему на моем сайте не отображается русский язык, английский пробую и все.
Русский язык в HTML
Все здравствуйте, проблема с русским языком в html. даже после изменения кодеровки и добавление.
HTML Русский язык
Здравствуйте! У меня возникла проблемма с отображением русского языка. В Notepad++ русский текст.
Источник
HTML Глобальный атрибут lang
Атрибут lang (от англ. «language» ‒ «язык») задаёт язык, на котором написан текст внутри текущего элемента. Атрибут в теге устанавливает язык для всего текста на странице. В качестве задаваемого значения должно выступать значение допустимое документом BCP 47.
Так же предусмотрено указание через тире (‒) субверсии языка (версия языка: en-us , zh-gan ; набор символов для написания: sr-Latn ‒ сербский-латиница).
Атрибут lang может выполнять следующие функции:
- Оказание помощи поисковым системам (Yandex, Google и т.д.);
- Оказание помощи речевым синтезаторам (выбор соответствующего произношения);
- Помощь браузерам в выборе вариантов символов для высококачественной полиграфии (выбор соответствующих шрифтов, набора кавычек);
- Помощь браузерам в принятии решений о переносах, лигатурах, и интервалах;
- Помощь браузерам в выборе соответствующих пользовательских интерфейсов управления формой (выбор даты);
- Содействие в проверке орфографии и грамматики (выбор соответствующего словаря).
Примечание: Большинство программ умеет определять язык текста и без атрибута lang , так как они используют определенные таблицы символов в формате Unicode, с которыми сверяют символы текста HTML-страницы. В этих таблицах каждый символ языка имеет определенный код, таким образом, допустим, английская и русская буквы «A» хоть и одинаковы внешне, но имеют разные коды.
Синтаксис
Значения
В качестве значения указывается код языка.
Значение по умолчанию
Применяется к тегам
Атрибут lang относится к глобальным атрибутам, и может быть использован с любым элементом HTML.
Различия между HTML 4.01 и HTML5
В HTML5, атрибут lang может быть использован в любом HTML элементе.
В HTML 4.01 атрибут lang не используется со следующими элементами: ,
, , , , ,
Источник
Работа с языком в HTML (руководство)
Почему следует прочесть это руководство?
Информация о языке, используемом на странице важна для её доступности, стиля, функций поиска и по другим причинам. Кроме того, информация о языке, которая обычно передается между юзер-агентом и сервером, может быть использована для улучшения пользовательской навигации и локализуемости вашего сайта. Это руководство поможет вам воспользоваться преимуществами, доступными сегодня и в ближайшем будущем, с помощью корректного объявления информации о языке.
После прочтения руководства вы будете:
- знать, как объявить язык по умолчанию для вашей страницы, а также контент на различных языках
- понимать, чем языковые метаданные об ожидаемом языке аудитории отличаются от языка непосредственно текста, и смысл этой разметки
- способны найти информацию о том, как выбрать правильные значения атрибутов языка
- знать, как установить языковые настройки вашего браузера
- знать, как стилизовать ваши страницы в зависимости от выбранного языка.
Целевая аудитория: XHTML/HTML и CSS кодеры, веб-разработчики (PHP, JSP, и т. д.), а также все, кому необходимо руководство по объявлению и использованию языковой информации в HTML. Предполагается, что вы имеете базовое знакомство с HTML и CSS.
Данное руководство объединяет и организует ссылки на статьи, которые, все вместе, помогут вам понять основные аспекты работы с языковой информацией при создании HTML и CSS.
В двух словах
Всегда добавляйте lang атрибут к тэгу html для того, чтобы установить язык по умолчанию вашей страницы.
Если это XHTML 1.x или HTML5 Polyglot документ, используемый, как XML, вам следует также использовать xml:lang атрибут (с тем же значением). Если ваша страница используется только, как XML, то просто используйте xml:lang атрибут.
Не используйте meta элемент с http-equiv , установленным в значение Content-Language .
Выбирайте тэги из списка IANA Subtag Registry и следуйте правилам синтаксиса BCP 47 при использовании структур более сложных, чем просто языковой тэг. Держите свои языковые теги как можно более короткими.
Используйте :lang свойство в CSS, чтобы применять стили, зависящие от языка вашего контента.
Зачем объявлять язык?
Эта часть руководства объясняет мотивы для дальнейшего чтения. Если вы спешите и просто хотите знать, что делать, без теории, то начните читать раздел Как объявить язык страницы или элемента.
Браузеры и другие приложения могут использовать информацию о языке контента для предоставления пользователям наиболее подходящей информации или предоставления информации пользователям наиболее подходящим образом. Чем больше контента будет размечено и размечено правильно, тем более полезными и распространенными такие приложения станут.
Зачем использовать атрибут языка? содержит примеры того, как языковая информация может быть полезной.
Как объявить язык страницы или элемента
Вам следует устанавливать язык текста на странице, используя языковые атрибуты. К сожалению, существует более, чем один атрибут, а также есть несколько вещей, которые необходимо прояснить. Этот раздел обсуждает различные варианты: те, которые следует использовать, и те, которых следует избегать (и почему).
Объявление языка в HTML предоставляет итоговую информацию о том, как объявлять язык, используя атрибуты.
HTTP заголовки, мета элементы и информация о языке описывает, как языковые метаданные отличаются от действительного языка текста, а также Content-Language, используемый в HTTP заголовках и мета элементах.
Работа с языковыми тэгами
В этом разделе рассматривается, как выбирать и создавать языковые теги, то есть значения, используемые для атрибутов языка.
Чтобы быть уверенным в том, что все юзер агенты понимают, какой язык вы имеете в виду, вам необходимо следовать стандартным подходам при предоставлении языковых значений. Вам, вероятно, потребуется рассмотреть, как относиться к диалектным различиям, например между американским и британским английским, которые содержат существенные различия в орфографии и произношении.
Языковые тэги в HTML и XML описывает синтаксис языковых тэгов, использующих спецификацию BCP 47.
Выбор языкового тэга предоставляет практическую информацию о том, как выбрать корректный тэг из тысяч доступных, для представления необходимого вам языка.
Установка языковых настроек браузера
Когда ваш браузер получает документ из Сети, он отправляет HTTP запрос на сервер. Вместе с запросом, браузер также посылает информацию о своих языковых настройках. Эти настройки могут влиять на то, какой контент будет отправлен вам обратно. Узнайте, как устанавливать и изменять эти настройки.
Использование информации о языке для стилизации документа
Вам зачастую необходимо применять различные стили для текста на различных языках (например, шрифт или высота строки, или, вероятно, различные стили выделения и так далее). Если вы задействуете атрибуты для определения языка контента, то вы сможете использовать некоторые мощные CSS селекторы для автоматического применения различных стилей при изменении языка контента. Следующая статья рассматривает различные способы того, как это сделать.
Источник