Text モジュールのテキスト水準要素

since: 31st/Aug./2001; last modified: 13th/Sep./2001

Text モジュールには、次のブロックレベルの要素が定義されています:

  1. Heading: h1|h2|h3|h4|h5|h6 要素タイプ
  2. p 要素タイプ
  3. address 要素タイプ
  4. blockquote 要素タイプ
  5. pre 要素タイプ
  6. div 要素タイプ

更に、次のテキスト水準 (Inline) の要素が定義されています:

要素 属性 最小内容モデル
abbr Common (PCDATA | Inline)*
acronym Common (PCDATA | Inline)*
br Core EMPTY
cite Common (PCDATA | Inline)*
code Common (PCDATA | Inline)*
dfn Common (PCDATA | Inline)*
em Common (PCDATA | Inline)*
kbd Common (PCDATA | Inline)*
q Common, cite (URI) (PCDATA | Inline)*
samp Common (PCDATA | Inline)*
span Common (PCDATA | Inline)*
strong Common (PCDATA | Inline)*
var Common (PCDATA | Inline)*

内容セット Inline の説明も参照ください。

実装: DTD

Inline Phrasal
abbr, acronym, cite, code, dfn, em, kbd, q, samp, strong, var
Inline Structural
br, span

総論

内容モデル

br 要素を除けば、内容モデルは全て同じく、文字データか、内容セット Inline です。

br 要素は内容をもたない空要素です。

属性

br 要素と q 要素を除けば、属性は全て同じく、 Common です:

Common

br 要素は Core だけ定義されており、 q 要素は Common に追加して cite 属性も定義されています。

テキストレベル要素のグループ化: span 要素

名前span
分類Inline
意味span, generic language/style container
日本語テキストレベルグループ化要素、言語・スタイルコンテナ

内容モデルと属性は総論に従います。

この要素は、テキストレベルの要素構造をグループ化し、より上位の構造を形成するために用います。また、当該文字列の言語やスタイルシートの目標などにすることもあります。

ブロックレベルの構造は div 要素でグループ化し、テキストレベルの構造は span 要素でグループ化します。

<p>ある文字列に注釈をつけたい場合は、
<span title="テキストのグループ化要素">span 要素</span>
の内容にして、当該要素に title 属性を指定するという方法があり
ます。</p>
<p>また、言語属性と併用することも良いでしょう。日本語の中に
<span xml:lang="en">Internationlization</span>
が必要になることもあるのです。</p>
<p>また、スタイル情報を適用する目標にすることもあります。
このときは、 <span class="element">class 属性や
id 属性</span>と併用します。</p>

文書の構造化ということを考えるならば、 span 要素の利用頻度は非常に高いものになるでしょう。

強調: strong 要素と em 要素

名前em
分類Inline
意味emphasis
日本語強調
名前strong
分類Inline
意味stronger emphasis
日本語より強い強調

内容モデルと属性は総論に従います。どちらも強調する文字列をマークアップするための要素タイプです。

em 要素
強調する文字列を示します。
strong 要素
強く強調する文字列を示します。

英米の書籍では、強調する文字列はイタリック体で示し、より強く強調したい場合は、太字のゴシック体で示す習慣があります。この習慣に従うブラウザが殆どですが、見栄えはスタイルシートで調整するものです。

サンプル

<p>ここは<em>強調</em>する文字列。
時として、<strong>より強く強調</strong>する場合もあります。</p>

強制改行:br 要素

名前br
分類Inline
意味forced line break
日本語強制改行

br 要素タイプは、段落中などソースの解釈後に改行が無効化される要素内で、行を強制的に終了させて、新しい行を開始するための要素タイプです。具体的には、改行させる位置に br 要素を記述します。

内容モデル

br 要素は内容をもたない空要素です。従って、タグの記述方法が特殊です:

<br />

空要素には、 meta 要素、 link 要素、 img 要素などが存在します。

属性

br 要素には Core だけ定義されています:

Core

サンプル

<p>段落などの途中で強制改行したい場合は、
br 要素を用います。改行したい場所に br 
要素を記述すると強制的に改行されます。<br />
ほらこの通り。改行されたことが分かりますか?</p>

上記サンプルの表示例です:

段落などの途中で強制改行したい場合は、 br 要素を用います。改行したい場所に br 要素を記述すると強制的に改行されます。
ほらこの通り。改行されたことが分かりますか?

省略語: abbr 要素と acronym 要素

名前abbr
分類Inline
意味abbrebiated form
日本語省略系
名前acronym
分類Inline
意味acronym
日本語頭字語、頭文字化省略語

内容モデルと属性は総論に従います。

abbr 要素タイプと acronym 要素は、当該文字列が省略語であることを示すための要素タイプです。

abbr 要素
省略語であることを示す: "WWW", "HTTP", "URI", "Mass.", "M.", "Inc.", "et al.", "etc.", etc.
acronym 要素
頭文字化省略語であることを示す: "WAC", "radar", "GmbH", "NATO", "F.B.I.", "独禁法", "国体", etc.

音声出力ブラウザにおいて、アルファベットを一文字づつ読むのか、続けて読むのかを指示する役割もあります。

サンプル

<abbr title="World Wide Web">WWW</abbr>
<abbr xml:lang="fr" 
      title="Soci&eacute;t&eacute; Nationale des Chemins de Fer">
   SNCF
</abbr>
<abbr lang="es" title="Do&ntilde;a">Do&ntilde;a</abbr>
<abbr title="Abbreviation">abbr.</abbr>

被定義語句: dfn 要素

名前dfn
分類Inline
意味defining instance of the enclosed term
日本語被定義語句

内容モデルと属性は総論に従います。役割は、被定義語句であることを示すことです。

サンプル

<p><dfn>line break</dfn> is defined
to be a carriage return (&#x000D;),
a line feed (&#x000A;), or a carriage
return/line feed pair. All line
breaks constitute white space.</p>

引用: cite 要素と q 要素

名前cite
分類Inline
意味citation or a reference to other sources
日本語引用、参照
名前q
分類Inline
意味text level quotation
日本語テキストレベル引用語句

cite 要素の内容モデルと属性は総論に従います。役割は、引用元の文献名などを示すことです。

q 要素の内容モデルは総論に従いますが、属性は総論に加えて cite 属性が定義されています。役割は、文字列が引用されたものであることを示すことです。ブロックレベルの引用は blockquote 要素を用い、テキストレベルの引用は q 要素を用います。

サンプル

<cite>Harry S. Truman</cite> 曰く、
<q xml:lang="en-us">The buck stops here.</q>
<cite>[XHTMLMOD]</cite> によれば、
<q xml:lang="en"
   cite="http://www.w3.org/TR/xhtml-modularization/introduction.html">
   XHTML is the reformulation of HTML 4 as an application of XML. 
</q>

ユーザーエージェントは、 q 要素を取り扱うとき、指定されている言語に適した引用符を自動的に付加するように推奨されています。これを実装しているブラウザは極々僅かに過ぎませんが、文書作者は q 要素に引用符はつけないようにするべきでしょう。ユーザーエージェントが自動的に付加する引用符と重複してしまうからです。サポートしていないユーザーエージェントでは、地の文と混ざってしまいますが、スタイルで文字色を変えるなどして回避するのが良いと思います。

コンピューターコード: code 要素、 kbd 要素、 samp 要素、 var 要素

名前code
分類Inline
意味fragment of computer code
日本語コンピュータコードの断片
名前kbd
分類Inline
意味key-board, text to be entered by the user
日本語ユーザによる入力語句
名前var
分類Inline
意味instance of a variable or program argument
日本語変数
名前samp
分類Inline
意味sample output from programs, scripts, etc
日本語出力例

code 要素、 kbd 要素、 samp 要素、 var 要素の内容モデルと属性は総論に従います。

これらの要素タイプは、コンピュータのプログラムコードの断片を意味付けするために用意されています。

code 要素
コンピュータコードの断片であることを示します。
kbd 要素
ユーザーによって入力されるべき文字列であることを示します。
samp 要素
プログラムやスクリプトの、出力例であることを示します。
var 要素
プログラムやスクリプトの、変数であることを示します。
<p>Perl の <code>while</code> ループ
について紹介します:</p>
<pre>
print "Steps?";
chomp(<var>$s</var>=&lt;STDIN&gt;);
<var>$pi4</var>=1.0;
<var>$n</var>=0.0;
while(<var>$n</var> &lt; <var>$s</var>){
  <var>$n</var>=<var>$n</var>+1;
	<var>$pi4</var>=<var>$pi4</var>+(-1)**<var>$n</var>/(2.0*<var>$n</var>+1.0);
	<var>$pi</var>=<var>$pi4</var>*4.0;
	print "<var>$n</var>: <var>$pi</var>\n";
}
</pre>
<p>これは円周率 &pi; を計算するものです。
最初にループ回数を入力すると、その回数
だけ繰り返します。次は出力例です:</p>
<pre>
<samp>Steps?<kbd>10</kbd>
1: 2.66666666666667
2: 3.46666666666667
3: 2.8952380952381
4: 3.33968253968254
5: 2.97604617604618
6: 3.28373848373848
7: 3.01707181707182
8: 3.25236593471888
9: 3.0418396189294
10: 3.23231580940559</samp>
</pre>
<p>10000 回繰り返しても 
<samp>10000: 3.14169264359053</samp> ですから、
この公式は大変収束が遅いことが分かります。</p>

上記ソースの表示例です:

Perl の while ループ について紹介します:

print "Steps?";
chomp($s=<STDIN>);
$pi4=1.0;
$n=0.0;
while($n < $s){
  $n=$n+1;
	$pi4=$pi4+(-1)**$n/(2.0*$n+1.0);
	$pi=$pi4*4.0;
	print "$n: $pi\n";
}

これは円周率 π を計算するものです。 最初にループ回数を入力すると、その回数 だけ繰り返します。次は出力例です:

Steps?10
1: 2.66666666666667
2: 3.46666666666667
3: 2.8952380952381
4: 3.33968253968254
5: 2.97604617604618
6: 3.28373848373848
7: 3.01707181707182
8: 3.25236593471888
9: 3.0418396189294
10: 3.23231580940559

10000 回繰り返しても 10000: 3.14169264359053 ですから、 この公式は大変収束が遅いことが分かります。


Copyright © 2001, SUGAI, Manabu. All rights reserved. 著作権は放棄していません。
SEO [PR] ”š‘¬!–³—¿ƒuƒƒO –³—¿ƒz[ƒ€ƒy[ƒWŠJÝ –³—¿ƒ‰ƒCƒu•ú‘—