属性の中には,多くの要素で共通に使用される属性があります。これらの属性を汎用属性と呼びます。まずは,これまでの要素のうち,body要素の内側に記述される要素のDTDを見てみましょう。
<!ELEMENT body %Block;>
<!ATTLIST body
%attrs;
onload %Script; #IMPLIED
onunload %Script; #IMPLIED
>
<!ELEMENT p %Inline;>
<!ATTLIST p %attrs;>
<!ELEMENT h1 %Inline;>
<!ATTLIST h1 %attrs;>
<!ELEMENT h2 %Inline;>
<!ATTLIST h2 %attrs;>
<!ELEMENT h3 %Inline;>
<!ATTLIST h3 %attrs;>
<!ELEMENT h4 %Inline;>
<!ATTLIST h4 %attrs;>
<!ELEMENT h5 %Inline;>
<!ATTLIST h5 %attrs;>
<!ELEMENT h6 %Inline;>
<!ATTLIST h6 %attrs;>
<!ELEMENT ul (li)+>
<!ATTLIST ul %attrs;>
<!ELEMENT ol (li)+>
<!ATTLIST ol %attrs;>
<!ELEMENT li %Flow;>
<!ATTLIST li %attrs;>
<!ELEMENT dl (dt|dd)+>
<!ATTLIST dl %attrs;>
<!ELEMENT dt %Inline;>
<!ATTLIST dt %attrs;>
<!ELEMENT dd %Flow;>
<!ATTLIST dd %attrs;>
<!ELEMENT address %Inline;>
<!ATTLIST address %attrs;>
<!ELEMENT hr EMPTY>
<!ATTLIST hr %attrs;>
<!ELEMENT pre %pre.content;>
<!ATTLIST pre
%attrs;
xml:space (preserve) #FIXED 'preserve'
>
<!ELEMENT blockquote %Block;>
<!ATTLIST blockquote
%attrs;
cite %URI; #IMPLIED
>
<!ELEMENT br EMPTY>
<!ATTLIST br %coreattrs;>
<!ELEMENT em %Inline;>
<!ATTLIST em %attrs;>
<!ELEMENT b %Inline;>
<!ATTLIST b %attrs;>
<!ELEMENT dfn %Inline;>
<!ATTLIST dfn %attrs;>
<!ELEMENT code %Inline;>
<!ATTLIST code %attrs;>
<!ELEMENT samp %Inline;>
<!ATTLIST samp %attrs;>
<!ELEMENT kbd %Inline;>
<!ATTLIST kbd %attrs;>
<!ELEMENT var %Inline;>
<!ATTLIST var %attrs;>
<!ELEMENT cite %Inline;>
<!ATTLIST cite %attrs;>
<!ELEMENT abbr %Inline;>
<!ATTLIST abbr %attrs;>
<!ELEMENT acronym %Inline;>
<!ATTLIST acronym %attrs;>
<!ELEMENT q %Inline;>
<!ATTLIST q
%attrs;
cite %URI; #IMPLIED
>
<!ELEMENT sub %Inline;>
<!ATTLIST sub %attrs;>
<!ELEMENT sup %Inline;>
<!ATTLIST sup %attrs;>
これらの各要素に共通している属性にパラメータ実体参照「%attrs;」があります。これを詳しく見てみると,
<!ENTITY % attrs "%coreattrs; %i18n; %events;">
と定義されています。これらのパラメータ実体参照で定義されている属性群は,それぞれ次のように呼ばれています。
- %coreattrs; (コア属性)
- %i18n; (国際化属性)
- %events; (イベント属性)
では,それぞれの属性について詳しく見ていきましょう。
1.18.1 コア属性
<!ENTITY % coreattrs
"id ID #IMPLIED
class CDATA #IMPLIED
style %StyleSheet; #IMPLIED
title %Text; #IMPLIED"
>
- id属性
- Webページ中で要素を一意に識別する名前を指定します。CSSやJavaScriptと合わせて使用されます。
- class属性
- クラス名を指定します。主にスタイルシートで定義されたスタイルのクラス名を指定する場合に使用されます。
- style属性
- 要素に対するスタイル情報を記述します。通常,外部スタイルシートと呼ばれる手法を使用するので,この属性はあまり使用されません。
- title属性
- 要素に対する補助情報を記述します。
1.18.2 国際化属性
<!ENTITY % i18n
"lang %LanguageCode; #IMPLIED
xml:lang %LanguageCode; #IMPLIED
dir (ltr|rtl) #IMPLIED"
>
- lang属性
- 要素の基本言語情報を指定します。日本語の場合,「ja」を指定します。将来的には,廃止方向にある属性なので,あまり使用しません。
- xml:lang属性
- 要素の基本言語情報を指定します。日本語の場合,「ja」を指定します。lang属性のXML文書用の属性です。基本言語情報を記述する必要がある場合,通常,こちらの属性を使用します。
- dir属性
- 書字方向を指定します。左から右へ書く言語の場合は「ltr」,逆に右から左で各言語の場合は「rtl」を指定します。
1.18.3 イベント属性
要素に対するイベントを指定し,属性値に記述されたスクリプト(JavaScriptなど)を駆動します。
<!ENTITY % events
"onclick %Script; #IMPLIED
ondblclick %Script; #IMPLIED
onmousedown %Script; #IMPLIED
onmouseup %Script; #IMPLIED
onmouseover %Script; #IMPLIED
onmousemove %Script; #IMPLIED
onmouseout %Script; #IMPLIED
onkeypress %Script; #IMPLIED
onkeydown %Script; #IMPLIED
onkeyup %Script; #IMPLIED"
>
- onclick属性
- onclickイベントは,ポインティングデバイスのボタンが要素の上でクリックされた時点で発生するイベントです。
- ondblclick属性
- ondblclickイベントは,ポインティングデバイスのボタンが要素の上でダブルクリックされた時点で発生するイベントです。
- onmousedown属性
- onmousedownイベントは,ポインティングデバイスのボタンが要素の上で押し下げられる際に発生するイベントです。
- onmouseup属性
- onmouseupイベントは, ポインティングデバイスのボタンが要素の上で放される際に発生するイベントです。
- onmouseover属性
- onmouseoverイベントは,ポインティングデバイスが要素の上に移動してきた際に発生するイベントです。
- onmousemove属性
- onmousemoveイベントは,ポインティングデバイスが要素の上を移動する際に発生するイベントです。
- onmouseout属性
- onmouseoutイベントは,ポインティングデバイスが要素の上から離れていく際に発生するイベントです。
- onkeypress属性
- onkeypressイベントは,要素上で何かあるキーが押されて放された際に発生するイベントです。
- onkeydown属性
- onkeydownイベントは,要素上で何かあるキーが押し下げられる際に発生するイベントです。
- onkeyup属性
- onkeyupイベントは,要素上で何かあるキーが解放される際に発生するイベントです。
0 件のコメント:
コメントを投稿