Атрибут dir в HTML

Содержание

8 Информация о языке и направлении текста

Содержание

В этом разделе обсуждаются два важных вопроса, которые влияют на интернационализацию HTML: спецификация языка (атрибут lang ) и направление (атрибут dir ) текста в документе.

8.1 Спецификация языка содержимого: атрибут lang

Информация о языке , определённая атрибутом lang , может быть использована Пользовательским Агентом (ПА) для управления представлением различными путями.
Вот некоторые ситуации, где предоставленная автором информация о языке может быть полезной:

  • содействие поисковым машинам;
  • содействие речевым синтезаторам;
  • помощь ПА в выборе вариантов глифов для высококачественной печати;
  • помощь ПА в выборе вариантов кавычек;
  • помощь ПА в принятии решений о дефисах, лигатурах и пробелах;
  • помощь программам проверки правописания.

Атрибут lang определяет язык содержимого элемента и значений атрибутов. Относится ли это к соответствующему атрибуту, зависит от синтаксиса и семантики атрибута и выполняемой операции.

Цель атрибута lang — создать ПА условия для более понятного представления содержимого на базе принятой для данного языка культурной практики. Это не означает, что ПА должны отображать нетипичные для конкретного языка символы менее осмысленным способом. ПА обязаны действовать наилучшим образом для отображения всех символов независимо от значений атрибута lang .

Например, если символы греческого алфавита появляются в окружении английского текста:

ПА должен
(1) попытаться представить английское содержимое соответствующим образом (например, при обработке знаков кавычек) и
(2) обязан попытаться представить символ γ наилучшим образом, несмотря на то, что этот символ не является английской буквой.

См. дополнительную информацию в разделе неотображаемые символы.

8.1.1 Коды языка

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

[RFC1766] определяет и разъясняет коды языка, которые должны использоваться в документах HTML.

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

Вот примеры кодов некоторых языков:

  • «en»: английский,
  • «en-US»: американский английский,
  • «en-cockney»: Cockney-версия английского,
  • «i-navajo»: навахо,
  • «x-klingon»: тег «x» обозначает экспериментальный тег языка.

Двухсимвольные первичные коды зарезервированы для аббревиатур [ISO639].
Двухсимвольные коды включают fr (французский), de (немецкий), it (итальянский), nl (фламандский), el (греческий), es (испанский), pt (португальский), ar (арабский), he (еврейский), ru (русский), zh (китайский), ja (японский), hi (хинди), ur (урду) и sa (санскрит).

Любые двухбуквенный субкод понимается как код страны в [ISO3166].

8.1.2 Наследование кодов языка

Элемент наследует информацию кода языка в следующем порядке (приоритет от высшего к низшему):

  • установлен атрибут lang в самом элементе;
  • установлен атрибут lang ближайшего элемента-предка (т.е. атрибут lang наследован);
  • заголовок HTTP «Content-Language» (который может быть сконфигурирован на сервере). Например:
  • значения ПА по умолчанию и установки пользователя.

В этом примере основной язык документа — французский («fr»). Один параграф объявлен как испанский («es»), после которого возвращается основной язык (французский). Следующий параграф содержит фразу на внедрённом японском («ja»), после чего возвращается основной язык (французский).

8.1.3 Интерпретация кодов языка

В контексте HTML код языка должен интерпретироваться ПА как иерархия понятий, а не отдельное понятие. Когда ПА уточняет отображение, используя информацию о языке (путём сравнения кодов языка таблиц стилей и значений атрибута lang ), он всегда должен находить точное совпадение, но должен также учитывать совпадение основных кодов. Таким образом, если значение атрибута lang «en-US» установлено для элемента HTML , ПА должен сначала отдать предпочтение информации, совпадающей с «en-US», а уже затем — с более общим значением «en».

Примечание. Иерархии кодов языка не гарантируют, что все языки с обычным префиксом будут свободно пониматься, но они (иерархии) позволяют пользователю запрашивать эту сообщность, если для пользователя это является верным.

8.2 Спецификация направления в тексте и в таблицах: атрибут dir

dir = LTR | RTL [CI] Определяет направление движения изначально нейтрального текста (т.е. текста, который не имеет унаследованного направления, как определено в [UNICODE]), из содержимого элемента и значений атрибута. Устанавливает также направление в таблицах.
Возможные значения:

  • LTR : слева-направо, текст или таблица;
  • RTL : справа-налево: текст или таблица.

В дополнение к спецификации языка документа с помощью атрибута lang , авторам может понадобиться определить базовое направление (слева-направо или справа-налево) части текста документа, структуры таблицы и т.д. Это устанавливается в атрибуте dir .

Спецификация [UNICODE] назначает направление символам и определяет (сложный) алгоритм для определения соответствующего направления текста. Если документ не содержит отображаемых справа-налево символов, то от соответствующего ПА не требуется применять двунаправленный алгоритм [UNICODE]. Если документ содержит отображаемые справа-налево символы и если ПА отображает эти символы, ПА обязан использовать двунаправленный алгоритм.

Хотя Unicode специфицирует символы с направлением текста, HTML предлагает высокоуровневые конструкции разметки, которые делают то же самое: атрибут dir (не путайте с элементом DIR ) и элемент BDO . Таким образом, для отображения еврейских кавычек более интуитивно понятно будет записать:

чем то же самое в мнемониках Unicode:

ПА не должны использовать атрибут lang для определения направления текста.

Атрибут dir наследуется и может быть переопределён. См. детали в разделе информация о наследовании направления текста.

8.2.1 Двунаправленный алгоритм. Введение.

Следующий пример иллюстрирует ожидаемое поведение двунаправленного алгоритма. Он включает английский, скрипт слева-направо, и еврейский языки, скрипт справа-налево:

Символы в этом примере (и во всех подобных) хранятся на компьютере таким образом: первый символ в файле — «e», второй — «n» и последний — «6».

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

Линии обозначают структуру предложения: английский — основной, а еврейский — внедрён. Достичь корректного представления можно без дополнительной разметки, поскольку еврейские фрагменты корректно повёрнуты ПА с применением двунаправленного алгоритма.

Если наоборот, преобладающий язык документа — еврейский, то базовое направление — справа-налево. Тогда корректное представление:

В этом случае, всё предложение представлено как текст справа-налево, и внедрённая последовательность символов на английском соответствующим образом повёрнута с помощью двунаправленного алгоритма.

8.2.2 Наследование информации о направлении текста

Двунаправленный алгоритм Unicode требует наличия базового направления для текстовых блоков. Чтобы определить базовое направление элементов на уровне блока, установите атрибут dir в элементе. Значение атрибута dir по умолчанию — «ltr» (left-to-right/слева-направо).

Если атрибут dir установлен для элементов уровня блока, он действует на период существования самого элемента и всех вложенных элементов уровня блока. Установка атрибута dir во вложенном элементе переопределяет наследованное значение.

Чтобы установить базовое направление текста для всего документа, установите атрибут dir элемента HTML .

В то же время, инлайн-элементы не наследуют атрибут dir . Это значит, что инлайн-элемент без атрибута dir не открывает дополнительный уровень в установке двунаправленного алгоритма. (Элемент рассматривается здесь как уровня инлайн или блока на основе его представления по умолчанию. Обратите внимание, что элементы INS и DEL могут быть уровня блока или инлайн в зависимости от контекста.)

8.2.3 Установка направления внедрённого текста

Двунаправленный алгоритм [UNICODE] автоматически поворачивает внедрённые последовательности символов в соответствии с их унаследованным направлением (как показано в предыдущих примерах). Однако в целом только один уровень внедрения может быть просчитан. Чтобы установить дополнительные уровни внедрённых изменений направления, придётся использовать атрибут dir в инлайн-элементах.

Рассмотрим тот же текст, что и ранее:

Предположим, преобладающим языком документа, содержащего этот параграф, является английский. С другой стороны, это предложение на английском содержит раздел на еврейском от HEBREW2 до HEBREW4, и раздел на еврейском содержит в себе английский (english3). Нужное представление предложения таково:

Илон Маск рекомендует:  Работа с длинными именами файлов под голым досом

Чтобы выполнить два изменения направления, мы должны предоставить дополнительную информацию путём явного разграничения. В этом примере мы используем элемент SPAN и атрибут dir для разметки текста:

Авторы могут также использовать специальные символы Unicode для выполнения множественных внедрённых изменений направления текста. Для получения внедрения «слева-направо», окружите внедряемый текст символами LEFT-TO-RIGHT EMBEDDING («LRE», 16-ричная 202A) и POP DIRECTIONAL FORMATTING («PDF», 16-ричная 202C). Для получения внедрения «справа-налево», окружите внедряемый текст символами RIGHT-TO-LEFT EMBEDDING («RTE», 16-ричная l 202B) и PDF.

Использование разметки направления HTML с символами Unicode. Авторы и разработчики авторских программных продуктов должны знать, что конфликты могут увеличиться, если атрибут dir в инлайн-элементах (включая BDO ) соседствует с символами форматирования [UNICODE]. Лучше использовать то или другое. Метод разметки даёт больше гарантии структурной целостности документа и облегчает решение некоторых проблем при редактировании двунаправленного текста HTML в простом текстовом редакторе, но некоторые программы могут быть более адаптированы к использованию символов [UNICODE]. Если используются оба метода, нужно быть очень внимательным, устанавливая вложенную разметку и внедрённые изменения направления, иначе результаты отображения могут быть непредсказуемыми.

8.2.4 Переопределение двунаправленного алгоритма: элемент BDO

Начальный тег: необходим, Конечный тег: необходим

dir = LTR | RTL [CI] Этот обязательный атрибут определяет базовое направление текста в содержимом элемента. Это направление переопределяет унаследованное направление символов, как указано в [UNICODE]. Возможные значения:

  • LTR : Left-to-right/слева-направо;
  • RTL : Right-to-left/справа-налево.

Атрибут, определённый в другом месте

Двунаправленного алгоритма и атрибута dir обычно достаточно для обслуживания внедрённых изменений направления. Однако, в некоторых ситуациях двунаправленный алгоритм может быть причиной некорректного представления. Элемент BDO позволяет авторам отключить двунаправленный алгоритм в определённом фрагменте текста.

Рассмотрим документ, содержащий текст:

и представим, что этот текст уже выведен в таком визуальном порядке. Причиной этого может быть то, что стандарт MIME ([RFC2045], [RFC1556]) отдаёт преимущество визуальному расположению, т.e. что последовательности текста «справа-налево» вставляются справа-налево в потоке байтов.
В email этот пример может быть сформатирован с включением символов новой строки:

Это конфликтует с двунаправленным алгоритмом [UNICODE], поскольку этот алгоритм повернёт 2WERBEH, 4WERBEH и 6WERBEH вторично, отображая еврейские слова слева-направо вместо справа-налево.

Решением в данном случае будет переопределение двунаправленного алгоритма помещением отрывка Email в элемент PRE (для сохранения символов новой строки) и каждой строки в элемент BDO , атрибут dir которого установлен в LTR :

Это говорит двунаправленному алгоритму «Оставь меня слева-направо!» и должно создать желаемое представление:

Элемент BDO должен использоваться в конструкциях, где нужен полный контроль за порядком расположения (напр., несколько многоязычных частей). Наличие атрибута dir для этого элемента обязательно.

Авторы могут также использовать специальные символы Unicode для переопределения двунаправленного алгоритма. — LEFT-TO-RIGHT OVERRIDE (202D) или RIGHT-TO-LEFT OVERRIDE (202E). Символ POP DIRECTIONAL FORMATTING (202C) заключает любое переопределение двунаправленного алгоритма.

Примечание. Напоминаем, что может увеличиться количество конфликтов, если атрибут dir в инлайн-элементах (включая BDO ) соседствует с символами форматирования [UNICODE].

Двунаправленность и кодировка символов . В соответствии с [RFC1555] и [RFC1556], существуют несколько специальных соглашений об использовании значений параметра «charset» для обозначения двунаправленного представления в MIME mail, в особенности для различения визуального, подразумеваемого, и явного указания направления. Значение параметра «ISO-8859-8» (для еврейского языка) обозначает визуальное кодирование, «ISO-8859-8-i» обозначает подразумеваемую двунаправленность и «ISO-8859-8-e» обозначает явную двунаправленность.

Поскольку HTML использует двунаправленный алгоритм Unicode, соответствующие документы, кодированные с использованием ISO 8859-8, должны быть помечены как «ISO-8859-8-i». Явный контроль направления также возможен в HTML, но он не может быть выражен в ISO 8859-8, так что «ISO-8859-8-e» не должен использоваться.

Значение «ISO-8859-8» подразумевает, что документ сформатирован визуально, с потерей некоторой разметки (такой как TABLE с правым выравниванием и запретом переноса слов), чтобы обеспечить верное отображение в более старых ПА, не обрабатывающих двунаправленность. Такие документы не соответствуют настоящей спецификации. При необходимости они могут быть оформлены в соответствии с настоящей спецификацией (и одновременно будут корректно отображаться в более старых ПА) путём добавления разметки BDO там, где это необходимо. В противоположность уже сказанному в [RFC1555] и [RFC1556], ISO-8859-6 (арабский язык) визуально не упорядочивается.

8.2.5 Символьные мнемоники для указания направления и управление сращиванием

Поскольку иногда возникают двусмысленные ситуации при установке направления определённых символов (напр., знаки препинания), спецификация [UNICODE] содержит символы для соответствующего разрешения таких ситуаций. Также Unicode включает некоторые символы управления поведением сращивания там, где это необходимо (напр., некоторые ситуации с арабскими буквами). HTML 4 включает символьные ссылки-мнемоники для таких символов.

Следующий отрывок ОТД представляет некоторые мнемоники направления:

Мнемоника zwnj используется для блокировки сращивания в контексте, когда сращивание есть, но нежелательно.
Мнемоника zwj действует наоборот: она форсирует сращивание, когда его не должно быть, но оно необходимо. Например, арабская буква «HEH» используется как сокращение от «Hijri», названия исламской календарной системы. Поскольку изолированно форма «HEH» похожа на цифру пять, как принято в арабском письме (на базе индийской нумерации), для предотвращения конфликтов «HEH» с конечной цифрой пять в обозначении года используется начальная форма «HEH». В то же время, отсутствует контекст (т.е. сращивание букв), к которому «HEH» можно присоединить. Символ zwj обеспечивает такой контекст.

Также в персидских текстах встречаются случаи, когда буквы, которые обычно могут сращиваться с последующими, в курсивном соединении не делают этого. Символ zwnj используется для блокировки сращивания в таких случаях.

Другие символы, lrm и rlm , используются для форсирования направленных или нейтрально направленных символов. Например, если знак двойной кавычки вставляется между арабскими (справа-налево) и латинскими (слева-направо) буквами, направление знака кавычки на определено (закавычивает ли она арабский или латинский текст?). Символы lrm и rlm имеют свойство направления, но не имеют свойств ширины и разрыва слов/строки. См. детали в [UNICODE].

«Зеркальные» глифы символов. Вообще двунаправленный алгоритм не отражает «зеркально» глифы символов, а оставляет их без воздействия. исключение составляют символы, такие как скобки (см. [UNICODE], таблица 4-7). В тех случаях, когда зеркальное отражение необходимо, например, для египетских иероглифов или греческих Bustrophedon, или для достижения специальных дизайнерских эффектов, этим можно управлять с помощью стилей.

8.2.6 Действие таблиц стилей на двунаправленность

В целом, использование таблиц стилей для изменения визуального представления элементов с уровня блока на инлайн и наоборот является более прямым путём. Однако, поскольку двунаправленный алгоритм основывается на различении уровней блок/инлайн, необходимо особое внимание при обеспечении трансформации.

Если инлайн-элемент, не имеющий атрибута dir , трансформируется в элемент уровня блока с помощью таблицы стилей, он наследует атрибут dir от ближайшего родительского блок-элемента для определения базового направления блока.

Если блок-элемент, не имеющий атрибута dir , трансформируется в стиль инлайн-элемента с помощью таблицы стилей, результат представления должен быть эквивалентным, в плане двунаправленного форматирования, форматированию, получаемому путём явного добавления атрибута dir (с установкой наследуемого значения) к трансформируемому элементу.

5. HTML — Атрибуты

Вы уже знакомы с несколькими html-тегами и их использованием, например теги заголовков

, или тег абзаца

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

Атрибут — используется для определения характеристик html-элемента и помещается внутри открытого тега элемента. Все атрибуты состоят из двух частей — это имя и значение:

    Имя — это свойство, которое Вы хотите установить. Например, элемент абзаца

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

  • Значение — это значение, которое Вы хотите установить для свойства. Значение атрибута всегда помещается в кавычки. В приведенном ниже примере показаны три возможных значения атрибута align: left, center и right.
  • Имена и значения атрибутов в HTML не зависят от регистра. Однако консорциум World Wide Web (W3C) рекомендует в своей рекомендации HTML 4 использовать атрибуты и значения атрибутов в нижнем регистре.

    Пример

    Получим следующий результат:

    Содержание

    Основные атрибуты HTML

    Существует четыре основных атрибута в HTML, которые могут использоваться для большинства html-элементов (хотя и не для всех):

    Атрибут id

    Атрибут id html-тега может быть использован для однозначной идентификации любого элемента внутри html-страницы. Существуют две основные причины, по которым Вы можете использовать атрибут id для элемента:

    • Если элемент содержит атрибут id как уникальный идентификатор, то можно идентифицировать только этот элемент и его содержимое.
    • Если на веб-странице (или в таблице стилей) есть два элемента с одним и тем же именем, Вы можете использовать атрибут id для различения элементов, имеющих одно и то же имя.
    Илон Маск рекомендует:  Интеграция журнала livejournal в персональный сайт

    Таблицу стилей мы обсудим в отдельном самоучителе. Пока же давайте использовать атрибут id для различения двух элементов абзаца, как показано ниже.

    Атрибут title

    Атрибут title — дает название элемента для элемента. Синтаксис для атрибута title аналогичен атрибуту id.

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

    Пример

    Получим следующий результат:

    Теперь попробуйте навести курсор на «Пример заголовка», и Вы увидите, что title, который Вы использовали в вашем коде, выйдет как подсказка курсора.

    Атрибут class

    Атрибут class — используется для связывания элемента со списком стилей и задает класс элементу. Вы узнаете больше об использовании атрибута class, когда изучите CSS (каскадные таблицы стилей). Так что пока можете это пропустить.

    Значением атрибута может быть также список имен классов, разделенных пробелами. Например:

    Атрибут style

    Атрибут style — позволяет указывать правила каскадной таблицы стилей (CSS) внутри элемента.

    Получим следующий результат:

    На данный момент мы не изучаем CSS, так что давайте продолжим, не беспокоясь о CSS. Здесь Вам нужно понять, какие существуют html-атрибуты, и как их можно использовать при форматировании содержимого.

    Атрибуты интернационализации

    Существует три атрибута интернационализации в HTML, которые доступны для большинства (хотя и не для всех) элементов XHTML.

    Атрибут dir

    Атрибут dir — позволяет указать браузеру направление потока текста. Атрибут dir может принимать одно из двух значений, которые Вы можете видеть в следующей таблице:

    Значение Описание
    ltr Слева направо (значение по умолчанию).
    rtl Справа налево (для языков, таких как иврит или арабский, которые читаются справа налево).

    Пример

    Получим следующий результат:

    Когда атрибут dir используется в теге , он определяет, как текст будет представлен во всем документе. При использовании в другом теге он управляет направлением текста только для содержимого этого тега.

    Атрибут lang

    Атрибут lang — позволяет указать основной язык, используемый в документе, но этот атрибут хранится в HTML только для обратной совместимости с более ранними версиями HTML. Этот атрибут был заменен атрибутом xml:lang в новых xhtml-документах.

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

    Пример

    Атрибут xml:lang

    Атрибут xml:lang — это XHTML замена для атрибута lang. Значение атрибута xml:lang должно быть ISO-639 кодом страны, которые указаны выше.

    Общие атрибуты

    Ниже представлена таблица некоторых других атрибутов, которые можно легко использовать со многими html-тегами.

    Атрибут Опция Функция
    align right, left, center Горизонтальное выравнивание тегов.
    valign top, middle, bottom Вертикально выравнивает тегов внутри html-элемента.
    bgcolor числовые, шестнадцатеричные, RGB значения Помещает фоновый цвет за элемент.
    background URL Помещает фоновое изображение за элемент.
    id определяется пользователем Именование элемента для использования с каскадными таблицами стилей.
    class определяется пользователем Классифицирует элемент для использования с каскадными таблицами стилей.
    width числовое или процентное значение Задает ширину таблиц, изображений или ячеек таблицы.
    height числовое или процентное значение Задает высоту таблиц, изображений или ячеек таблицы.
    title определяется пользователем «Всплывающий» заголовок элементов.

    Мы ещё увидим соответствующие примеры атрибутов при изучении других html-тегов (полный список html-тегов и связанных атрибутов).

    Атрибут dir

    Атрибут dir используется для указания направления движения текста (слева направо или справа налево), язык которого является основным для данного элемента. Это бывает нужно в тех случаях, когда в тексте присутствуют фразы из разных языков, у которых направление письма различается, например арабский или персидский языки имеют письменность справа налево.

    Кроме этого, в зависимости от значения атрибута dir , браузеры будут менять не только направление текста, но и положение полосы прокрутки (скроллинга) элемента, а если его установить у тега , то и порядок столбцов HTML-таблицы. Однако с помощь этого атрибута нельзя поменять положение ячеек в отдельном ряду таблицы (тег ).

    Атрибут dir появился в HTML довольно давно, но раньше он поддерживался ограниченным количеством тегов, а теперь он есть у всех. Поэтому, если на страницах описания каких-то тегов вы увидите логотип HTML 5 ( ) напротив атрибута, то знайте, что этот тег начал поддерживать атрибут dir именно с версии HTML 5. Впрочем, таких тегов очень мало. C другой стороны, хоть в HTML 5 теперь все теги могут иметь этот атрибут — не факт, что браузеры его будут также понимать во всех случаях. Более того, в описаниях W3C также нет конкретики по данному вопросу, например о том, для чего использовать dir в тегах
    .

    Итак, атрибут dir сообщает браузеру о том, какое направление письма имеет язык, для которого, в сущности, предназначен текст внутри данного HTML-элемента. Основываясь на этих данных браузер, применив двунаправленный алгоритм, решит, в каком направлении будет правильней вывести основной текст на странице, а какие слова в коде текста перевернуть, если они написаны на языке с направлением письменности отличным от основного языка.

    Кстати, программы с двунаправленным алгоритмом «вшиты» не только в браузеры, но и, допустим, в почтовые клиенты (Outlook, Bat и т.д.), а также во многие другие приложения работающие с текстом.

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

    Допустим в коде страницы есть параграф содержащий текст на русском и арабском языках, обозначим слова на русском, как «русский1», «русский2», «русский3», а слова на арабском, как «арабский1», «арабский2», «арабский3». Я использовал именно такое обозначение арабских слов из-за того, что настоящие слова на этом языке довольно сложны для восприятия русскоговорящего населения.

    Пример части кода HTML:

    Так как во всех HTML-редакторах текст всегда пишется слева направо, то это означает, что арабские слова нашего примера сейчас написаны неверно и браузер, используя двунаправленный алгоритм их должен будет перевернуть. Но вот как он это сделает, будет зависеть от атрибута dir .

    Пример со значением dir=»ltr» (слева направо):

    Результат в браузере

    русский1 1йиксбара русский2 2йиксбара русский3 3йиксбара

    В этом примере атрибут dir сообщил браузеру то, что основной язык имеет направление слева направо, поэтому он и сохранил такой стиль письма, а арабские слова просто перевернул так, как этого требует данный язык.

    Теперь рассмотрим другой пример.

    Пример со значением dir=»rtl» (справа налево):

    Результат в браузере

    3йиксбара русский3 2йиксбара русский2 1йиксбара русский1

    В данном примере атрибут dir указал браузеру то, что основной язык элемента имеет направление справа налево, поэтому он полностью перевернул всю строку. Но так как браузер нашел в тексте русские слова, то, используя свой двунаправленный алгоритм, он вычислил, что они пишутся слева направо, поэтому он так их и вывел.

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

    Значения

    Значением атрибута dir является одно из ключевых слов, задающих направление текста.

    • ltr — Left-to-right (слева направо).
    • rtl — Right-to-left (справа налево).

    Значение по умолчанию: ltr.

    Синтаксис

    Обязательный атрибут: нет.

    Пример HTML: применение атрибута dir

    Результат: Применение атрибута dir.

    Обратите внимание на то, что в данном примере текст при dir= «rtl» не сместился к правой стороне окна браузера, так как атрибут был указан у тега , который, являясь встроенным (inline), имеет ширину равную своему содержимому, то есть тексту просто некуда смещаться. Вот если бы dir был установлен у тега

    , то вся вторая строка примера сместилась бы вправо.

    HTML dir attribute

    The dir attribute of HTML sets the direction of the text within an element in HTML document.

    Supported elements

    HTML dir attribute supports all elements except applet, base, basefont, bdo, br, frame, frameset, iframe, param, script.

    For bdo element, dir attribute is used to set bidirectional.

    Syntax

    Where ElementName is any supported element.

    Type of value

    Value

    Value Description
    ltr Left to right direction.
    rtl Right to left direction.

    Default value

    There is no default value of HTML dir attribute. But in practice, unless otherwise mentioned ltr (i.e. left to right) is taken as the default value.

    Supported doctypes

    HTML 4.01 strict, HTML 4.01 transitional, HTML 4.01 frameset.

    Example of HTML dir attribute

    Result

    This text is in left to right direction.

    Илон Маск рекомендует:  Javascript pad - Эквивалент php функции pad на JavaScript

    טקסט זה בשטחים השמאלי בכיוון הנכו

    View this example in a separate browser window

    Usage of dir attribute with bdo element

    Блог Vaden Pro

    • 91 просмотр

    Характеристики атрибута

    В каких браузерах работает?

    6.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

    Для чего используется

    Отвечает за ориентирование текста — написание начинается справа или слева. Это применяется в зависимости от языка, который формирует контент. Важно знать, что современные браузеры с помощью Юникода различают направления различных языков мира. В частности еврейский и арабский языки присутствуют в базе Юникода, поэтому в такой ситуации атрибут dir не сработает.

    В каких тегах он может использоваться?

    Как правильно задавать?

    Простейший пример использования атрибута выглядит следующим образом:

    Какие значения могут быть записаны в атрибут?

    • ltr — текст направлен вправо от левого края.
    • rtl — текст направлен влево от правого края.

    По умолчанию принимается значение ltr.

    HTML в профилях/Базовый профиль

    В данном разделе мы рассмотрим элементы и атрибуты, без которых на практике не обходится ни один документ HTML. Наличия трех из этих элементов требует действующая версия спецификации, в то время как остальные средства необходимы для несения непосредственно «полезной нагрузки» документа.

    Мы также рассмотрим атрибут dir , используемый для явного указания направления письма (слева-направо или справа-налево), что особенно важно для воспроизведения документов, содержащих текст на нескольких языках.

    Содержание

    Пример документа [ править ]

    Вновь обратимся к простейшему примеру документа, для наглядности приводимому здесь в XHTML-записи.

    Пример. Привет, мир!

    Это — пример документа HTML5.

    Обязательные элементы [ править ]

    Корневым элементом документа является элемент html . Этот элемент, в свою очередь, обязан содержать два (и только два) дочерних элемента: [1]

    1. head — метаданные (или «заголовок») документа в целом;
    2. body — «тело».

    Кроме того, данный элемент может содержать (незначимые) пробельные символы, комментарии, а также ряд атрибутов, три из которых ( lang , dir , xmlns ) рассмотрены ниже.

    Атрибуты lang и xml:lang [ править ]

    В качестве пожелания, спецификация предлагает всегда указывать атрибут lang для элемента html , определяя тем самым основной язык документа согласно BCP 47 (в простейшем случае — используя код языка ISO 639-1.) [2] [3]

    Свойство языка наследуется дочерними элементами и может быть переопределено на любом уровне вложенности явным указанием атрибута lang .

    В числе прочего, такое указание языка может способствовать использованию речевых синтезаторов и программ автоматизированного перевода, [1] корректной работе Web-поиска, а равно и правильному выбору шрифтовых вариантов некоторых букв ( cf. : серб. буква и рус. буква.)

    Спецификация XML предусматривает для указания языка атрибут xml:lang . [4] Использование этого атрибута может быть полезно из соображений совместимости с инструментами обработки XML, не реализующими особо поддержку HTML5. Если при этом также используется и атрибут lang , его значение обязано совпадать с таковым для xml:lang . [2]

    С целью обеспечения некоторой «совместимости» между представлениями HTML и XHTML, HTML5 допускает использование атрибута xml:lang также и в HTML-представлении. В этом случае, данный атрибут обязан дублировать атрибут lang элемента; использование xml:lang отдельно от lang , или с отличным значением, не допускается. [2]

    Атрибут dir [ править ]

    Наряду с атрибутом lang , для корректного воспроизведения многоязычных текстов также важен атрибут dir , определяющий направление письма для содержания элемента, и допускающий три возможных значения: [5]

    • ltr — направление письма для данного элемента — слева-направо (от англ. left-to-right );
    • rtl — справа-налево (от англ. right-to-left ); применимо для языков на основе арабского письма, иврита, etc. ;
    • auto — направление письма для данного элемента следует определить автоматически, независимо от направления письма для родительского элемента; (по-умолчанию, направление письма наследуется элементами-потомками.)

    Как и в случае атрибута lang , направление письма наследуется дочерними элементами и может быть переопределено на любом уровне вложенности явным указанием атрибута dir .

    Спецификация HTML5 предлагает использовать вариант auto только в исключительных случаях, когда направление письма содержащегося в элементе текста действительно не может быть установлено сколь угодно достоверно. [5]

    Атрибут xmlns [ править ]

    При использовании представления на основе XML (XHTML), элементы HTML должны быть отнесены к соответствующему пространству имен, чего обычно можно достичь используя атрибут xmlns в форме xmlns=»http://www.w3.org/1999/xhtml» для корневого элемента, как показано в примере выше. [6] [7]

    В представлении HTML данный атрибут не используется и допускается спецификацией в том и только том случае, когда имеет указанное значение. [6]

    Элемент title [ править ]

    Обязательный элемент head должен, в свою очередь, содержать элемент title , содержащий заглавие документа. Этот элемент может присутствовать в документе лишь в единственном экземпляре, и только как дочерний для элемента head . Содержанием данного элемента может быть только текст, — вложенные элементы не допускаются. [8]

    В тех случаях, когда заглавие может быть определено из контекста передачи документа (как, например, при передаче документа электронной почтой), спецификация позволяет не указывать данный элемент. [8] На практике, однако, существующие системы проверки действительности документов HTML [9] [10] всегда требуют наличия данного элемента.

    Элемент p [ править ]

    Основным элементом разметки текста является элемент p (от англ. paragraph — «абзац».) [11]

    В рамках рассматриваемого профиля, тело документа состоит из произвольного количества элементов p , каждый из которых может содержать текст на произвольном (задаваемом атрибутом lang) языке, как показано в примере ниже. Отметим, что спецификация HTML5 также включает критерии обнаружения неявных абзацев — задаваемых без использования элемента p . [12] В данном разделе, однако, мы не будем рассматривать данную возможность.

    В тех случаях, когда требуется переопределить язык для участка текста меньшего, чем абзац в целом, можно применить один из элементов, описываемых в разделе Ссылки и акценты.

    Пример. Привет, мир! — на разных языках

    Тег DIR и его атрибуты.

    Тег DIR был создан для создания списка из нескольких столбцов, он есть очень устаревшим и потому вместо него используйте тег UL.

    Категория тега :
    Тег форматирования текста. Начальный тег необходим, конечный тег необходим.

    Атрибуты тега :
    id — индитификатор.
    class — класс CSS
    title — всплывающая подсказка.
    style — встроенный инлайн стиль.
    onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown onkeyup — внутренние события.

    Тег dir, синтаксис:
    списки

    Список всех HTML-тегов.

    Поиск по тегам:
    Список всех тегов
    А вы знаете как сделать картинку фоном при помощи каскадных таблиц стилей?

    Учебник HTML5

    » Всё о HTML5 на русском

    Глобальный атрибут dir в HTML5

    Указывает направление текста.

    Принимаемые значения:

    ltr — если текст нужно выводить слева направо.

    rtl — если текст нужно выводить справа налево.

    В зависимости от языка и кодировки страницы, значение атрибута по умолчанию будет меняться. Т.е. например, если язык — русский или английский, то dir будет равен ltr. А если страница написана на арабском языке, то атрибут dir равен rtl.

    Пример использования:

    p dir =»ltr» > Этот текст идет слева направо. p >
    p dir =»rtl» > А этот текст идет справа налево. p >

    Примечание:

    Не стоит рассчитывать, что при dir равном rtl тест будет выводиться таким способом: «торобоан тскет» (прочитайте справа налево). На самом деле текст будет выводиться слева направо, но будет выровнен по правому краю.

    HTML dir attribute

    Examples

    Text direction is right-to-left paragraph:

    text direction from right to left!

    Browser Support

    All major browsers support the dir attribute

    Definition and Usage

    dir attribute specifies the text direction of the element’s content.

    Differences between HTML 4.01 and HTML5

    In HTML5, dir attribute can be used with any HTML element (it will verify that any HTML element, but not necessarily useful).

    In HTML 4.01, dir element can not be used: ,
    , , , , ,

    HTML dir attribute

    The dir attribute of HTML sets the direction of the text within an element in HTML document.

    Supported elements

    HTML dir attribute supports all elements except applet, base, basefont, bdo, br, frame, frameset, iframe, param, script.

    For bdo element, dir attribute is used to set bidirectional.

    Syntax

    Where ElementName is any supported element.

    Type of value

    Value

    Информация:
    Value Description
    ltr Left to right direction.
    rtl Right to left direction.

    Default value

    There is no default value of HTML dir attribute. But in practice, unless otherwise mentioned ltr (i.e. left to right) is taken as the default value.

    Supported doctypes

    HTML 4.01 strict, HTML 4.01 transitional, HTML 4.01 frameset.

    Example of HTML dir attribute

    Result

    This text is in left to right direction.

    טקסט זה בשטחים השמאלי בכיוון הנכו

    View this example in a separate browser window

    Usage of dir attribute with bdo element

    Понравилась статья? Поделиться с друзьями:
    Кодинг, CSS и SQL