HTML原理主義宣言

Status: 書き殴り宣言


HTML原理主義運動とは、とりあえず、誰もがちゃんと読め、場合によっては共有や再利用できるようにするために、規格通りにHTMLを書きましょうという運動である。

ま、とりあえず私からWebページ作成者様へのおねがいと考えてもらえば十分である。

以下には、間違いや誤解をまねく表現が残っています。また、江口の偏見やかなり奇妙な価値観もはいってます。どこが間違いでどこが偏見か探しましょう:-)ぼちぼち直します。


提案

文法的に正しいものを書きましょう

たまたまあなたの使っているブラウザで正常に動作しているように思われたと しても、他のブラウザでは正しく見えない可能性があります。頼るべきもの は規格によって定められた文法しかありません。

HTML 4.01W3Cの推奨になりました。 HTML 4.0仕様書の邦訳がありますので、ゆっくり読みましょう。チュートリアルとしては、 Academic HTML が現在のおすすめです。

<TITLE></TITLE>のなかはASCII文字のみで書きましょう

もちろん、<H1></H1>には日本語をつかってもかまいませんが、titleは最低限どのようなブラウザでも読めるようにしておいたほうがよいでしょう。

<img>にはalt="hogehoge"を付けましょう

たったこれだけのことで、画像を表示できない端末でも 読みやすくなります。

「alt=""の中に何を書けばいいのか?」という疑問がおこりますが、普通は空のままでいいでしょう。[icon]や[image]などという文字列を入れても情報量は全然増えません。

たとえば、自分のページのタイトルの脇にかっこいいアイコンをつけたとしましょう。しかしalt="nikki"などとつけても、「[nikki]原理主義者の日記」としか見えず、ぜんぜん情報量は増えていないわけです。

そこに画像情報が存在するぞという情報を伝達したい場合のみ文字列を入れればよいわけです。たとえば、顔写真を貼りつけて、alt="[原理主義者の顔]"というのを付けておけば、ぜひ顔を見たいという人は、画像の見えるブラウザを使って見てみようという気になるかもしれません。

1byteカナ文字は絶対に使ないようにしましょう

1byteのカナ文字(JIS X0201カナ)は使ってはいけません。たいがいの日本語EUCを内部的に使っている端末で文字化けをひきおこします。最悪の場合、ハングアップする場合もあります。

特にWINDOWS95に附属の日本語変換はどうも「」などの「役物」を1byteにしてしまう癖があるようですので注意しましょう。

文字コードはJIS(ISO-2022-JP)を使いましょう

MS漢字コード(Shift-JIS)や日本語EUCは他のコードとの見分けが非常に困難です。特に、1byteのカナを使ったMS漢字と日本語EUCはもはや原理的にも判別することができないのです。Shift-JISコードを使う場合は、明示的にcharsetを指定しましょう。

地の文を<pre>で囲む必要はありません

わざわざ<br>で改行する必要はありません

ときどき、1行が長過ぎると見にくいので<br>で1行ずつ改行する」というひとがいますが、そんな必要はありません。どの程度の1行がみやすいかはディスプレイ等に依存します。最悪なのが、わざわざ改行を入れてくれたものを表示できないディスプレイで見る場合で、非常に見にくいものになります。(これは、IBM HomePage BUilderとかいうものを使っているひとに多いようです。)

一般に、パラグラフの切れめに<br>を使うのはよいスタイルではありません。ふつうにパラグラフは<p>を使って書けばよいでしょう。

インデント(段落し)するのに<DL>を使うのはやめましょう

インデントのために<DL>を使うのはあやまりです。<DL>は、Defeinition Listです。つまり、言葉の定義など、単語とそれに対する説明に使うべきです。また、<DL>の中に<H>を入れることはできません。HTML 4.0のスタイルシートを使いましょう。

<DL>の中は、必ず<DT>とそれに対応する<DD>の組でなければなりません。インデントのために<DD>だけつかっている人はまちがいです。

実は<DL>は入れ子にすることが可能なのですが、あまりよいスタイルとは思えません。

文字の大きさを変えたいときは、<H>ではなく<FONT>

<H>は、Heading(見出し)です。文字の大きさを表わすものではありません。大きな文字、小さな文字を使いたいときは、HTML 3.2で定義されている<FONT>や<BIG><SMALL>などを使いましょう。

また、<H>は順番に使いましょう。1が一番重要な見出し(ふつうはタイトル)、2はその次に重要なもの、そして3、4と続きます。2の次が4などというのはよくないスタイルです。

また、<H>の前後は必ず改行されるということも覚えておきましょう。

これももはや、HTML 4.0のスタイルシートを使うべきでしょう。

<P>は改行ではなく、段落を表わします

<P>タグは段落のおわりではなく、先頭におきます。実はこれは</P>と対にしてつかうものだ、ということは知っていますか?(しかし</P>はいつでも省略できます)

ファイルの先頭には必ず<!DOCTYPE>宣言を

正しいHTMLの先頭には必ずDOCTYPE宣言が必要です。HTMLはSGMLという言語のサブセットであり、それがSGMLにそっていて、HTMLを使っているのだよ、ということを一番最初に宣言しておくお約束になっています。

HTML 2.0レベルを使っているひとは

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">

3.2レヴェルの<FONT>や<TABLE>なども使いたいひとは

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
を必ず先頭に入れておきましょう。この宣言の前に何か書いてはいけません。

また文書全体が次の例のような形になっているべきであることを 確認しておきましょう。

  <!DOCTYPE html PUBLIC "-//IETF//DTD HTML//EN">

  <HTML>
  <HEAD>
  <TITLE>Title of the Document</TITLE>
  ... 他のヘッダ
  </HEAD>
  <BODY>
  ここにいろいろ面白いことを書く
  </BODY>
  </HTML>

<CENTER>は注意してつかいましょう

HTML 3.2で定義された<CENTER>はうまく使うと効果的なのですが、 地の文のインデントに使うと非常に見にくいものになってしまいます。あまり よくできていないブラウザを使っている人が、左側に空白をあけるために地の 文をTableで囲って、それをセンタリングしているのをよくみかけます。気分 はわからないでもありません。しかしこれは、左がわに空白開けてみやすくす ることのできないブラウザがよくないのだということを意識しておきましょう。 たとえばlynxというよくできたブラウザは地の文は数文字分インデントしてく れます。あなたのブラウザがすべてではないのだし、またそれが優れたブラウ ザであるということもあやしいのです。


必見ページ

これらの人がHTML原理主義者ではありませんが、 参考になるはずです。特に最初のものは、この手の文書の 決定版となるものだと思います。


関連「書き殴り」

3/15 | 3/31 | 7/6 | 7/28 | 10/13 | 02/16 | 02/23 | 05/01

FAQ

原理主義ってなんですか?

さあ、よく知りません。純粋主義者puristってのもいるらしいですね。 こっちの方が近いかな?

規格規格と言いますが、技術の進歩があってこその規格ではないですか?

たしかに、HTML 2.0は仕様が貧弱で、不満を感じることも多いと思います。Netscapeなどが積極的に規格を拡張したために、よりきれいで便利なものになったのも否定しません。また、「規格にこだわっていては、進歩がない」というのにもある程度の真理が含まれているのも否定しません。

Netscapeの拡張はけっこうよく考えられていて、「ちゃんと」書いておけば、たいていのHTML2.0対応のブラウザでうまく読めるようになっています。

したがって、問題はむしろ、Netscape拡張などをあやまって使ってしまうことにあるのです。あなたがやりたいことは、たいてい規格通りに書くことができるのです。特に最近はHTML 3.2の規格がW3Cの推奨になりましたから、TABLEやFONTの大きさ指定などもかなり自由につかえるようになりました。

問題は、「自分で読めるからいい」という考えかたなのです。規格にそっていない文書は読めない場合があるのです。

あなたはわざわざインターネットとかいう広い世界で、あなたが表現したいことを表現しようとしています。それは一部の人にしか知られないようなものでいいのですか? なるべく多くの人によって読まれ、有効に活用してもらうことを望めば、最低限の規格は守りたくなると私は思います。

だいたい動くんだからいいじゃない?

そう、だから問題なのです。他の人への影響という観点からも考えてみましょう。

あなたが作った文書が読めないものであっても、それはしょうがないのかもしれません。あなたは「読めるひとに読めれば十分」と考えているかもしれません。

しかし、ここで、教育効果というものも考えてみてください。あなたの友人や後輩はあなたの文書をまねてしまうかもしれません。その結果、あなたの友人の文書はあなたの文書よりさらに読めないものになるかもしれません。その人は、あなたと違って、皆に読めるページを目指しているのかもしれませんが、結果的には読めないページを書いてしまうのです。

そのようにして誤解が広まり、結果的に、本来はみんなが楽しむことのできたはずのページが一部のひとにしか読めないものになってしまうのです。また、一度ひろまった誤解を修正する手間はたいへんなものになります。(実際、原理主義者でいることはけっこうたいへんなことなのです)

有用なページ、人気のあるページを書ける人、それを目指す人ほど、教育効果を考慮してほしいと思います。

そんなに工夫する必要はないのです。もちろん、あなたの書きたいことを素直に表現するのが一番よいことなのだと私は信じています。

ではみなさん、楽しくて誰でも読めるページをおねがいします。Have Fun!


ご意見、ご批判は eguchi.satoshi@gmail.com にメールしてください。


EGUCHI Satoshi <eguchi.satoshi@gmail.com>
Last modified: Sat Mar 17 15:59:05 JST 2001