Loose-Info.com

Last Update 2019/12/25


TOP - HTML(HyperText Markup Language) - <BDO>

・タグの機能
タグで囲まれた範囲の表示方向や言語情報を上書き指定します。

・構成
内容モデル宣言概要
任意選択 : #PCDATA
<TT><I><B><BIG><SMALL>
<EM><STRONG><DFN><CODE><SAMP><KBD><VAR><CITE><ABBR><ACRONYM>
<A><IMG><OBJECT><BR><SCRIPT><MAP><Q><SUB><SUP><SPAN><BDO>
<INPUT><SELECT><TEXTAREA><LABEL><BUTTON>

タグの省略
開始 → 不可
終了 → 不可

DTD(注1)での記述

BDO要素宣言
<!ELEMENT BDO - - (%inline;)* -- I18N BiDi over-ride -->

inline(引数実体参照) の実体宣言
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">

fontstyle(引数実体参照) の実体宣言
<!ENTITY % fontstyle "TT | I | B | BIG | SMALL">

phrase(引数実体参照) の実体宣言
<!ENTITY % phrase "EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE | ABBR | ACRONYM">

special(引数実体参照) の実体宣言
<!ENTITY % special "A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">

formctrl(引数実体参照) の実体宣言
<!ENTITY % formctrl "INPUT | SELECT | TEXTAREA | LABEL | BUTTON">

・属性
id : HTMLドキュメント内の個々の要素をユニークに識別可能とする属性 class : スタイルシートのスタイルクラスを適用 style : インラインスタイルで、タグにスタイルを適用 title : 説明のためのタイトル

lang
属性機能 : 言語コード
省略時値 : IMPLIED

解説
言語コードは、主要コードおよびサブコードで構成
主要コードは[ISO639]の2文字コード。日本語は"ja"
詳細はW3Cの解説を参照

dir
属性機能 : ブラウザが表示するテキストの方向
省略時値 : REQUIRED

解説
ltr (左から右)
rtl (右から左)
i18n引数実体参照内で定義されているものとは異なり必須属性

DTD(注1)での記述

BDO要素の属性定義
<!ATTLIST BDO %coreattrs; -- id, class, style, title -- lang %LanguageCode; #IMPLIED -- language code -- dir (ltr|rtl) #REQUIRED -- directionality -- >

LanguageCode(引数実体参照) の実体宣言
<!ENTITY % LanguageCode "NAME" -- a language code, as per [RFC1766] -->

・サンプルコード
1行目 : 文字列表示方向指定なし
2行目 : <SPAN>タグでのdir属性指定(右 → 左)
3行目 : <DIV>タグでのdir属性指定(右 → 左)
4行目 : <BDO>タグでのdir属性指定(右 → 左)
IEなどの一般的なブラウザ上において、<BDO>タグ以外で文字列表示方向の変化はありません。
<HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <TITLE>テスト</TITLE> <STYLE type="text/css"> <!-- body { font-family: serif; font-size: 14px } --> </STYLE> </HEAD> <BODY> テスト用テキスト<BR> <SPAN dir="rtl">テスト用テキスト</SPAN><BR> <DIV dir="rtl">テスト用テキスト</DIV> <BDO dir="rtl">テスト用テキスト</BDO> </BODY> </HTML>

注1)
DTD関連の記述はhttp://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd より引用しています(着色部)。
上記のDTDが最新のものとは限りません。
最新版はhttp://www.w3.org/TR/html4/strict.dtdを確認してください。