ホームページ入門

理想と現実


ブラウザで表示させてみましょう、HTMLタグを書いたら表示確認をしてみましょう、と書いてゐるサイトは駄目。
確かにその通りだ。理想論を述べればそうなのである。既存のWebブラウザは必ずしもその間違いを指摘しないし、「HTMLはレイアウトのためのもの」という余計な誤解を与えてしまう。文書のチェックはやはりそれ相応のツールを使うのが一番だ。
しかし、残念ながらこの理論は現実的ではない
いくら正しい薀蓄を述べたとしても、生徒がまずそれに興味を抱かないうちには何も始まらないのである。それぞれの意味を正しく説明し、段階を追って解説するのが正道なのだろうが、まず実際にこの目で確かめてみなければ何時まで経っても知識は自分のものにはならない。やはり視覚というものは偉大なもので、とりわけ初心者はブラウザにその変更が反映されて初めてそれがどのような効果をもたらしたかを知るようになる。h1タグで括って整形式を作り上げた“事実”ではなく、その“結果”ブラウザ上で太字の大きなフォントで表示されたことに依ってのみ、やっと「自分は見出しをマーク付けしたのだ」と理解するのだ。

文法と厳格さ

AHLを初めから使うなど色々検討してみたが、残念ながらその選択肢は残らなかった。AHLのまずい所は、“間違いばかりを指摘する事”である。チェッカなのだから至極当たり前の話だが、しかし「間違いばかりを悉く突き付ける教師は愚か」である。
まず自分の行なった行為の結果を見て、それから間違いを直していく方がより利口な手段だ。自らの意志でチェッカを使うのは一向に構わないが、「ほら、お前の書いているHTMLはこんなに駄目なんだ」と初めから言われて生徒はやる気を出すだろうか。それよりも、視覚的に自分の辿った道筋を眺めてから、行く末を正してやるのが道理である。

実際的な手段

一つの教え方として、こんな事を考えてみた。まず初めに簡単なCSSサンプルを与えてやり、それを早速HTMLに適用する。それから初めて要素云々タグ云々の解説をする。h1はボーダー付きのセンタリングで表示されるし、pには1文字分インデントが入る。中途半端に視覚的な教え方をするから勘違いするのである。初めからがちがちな視覚的効果に訴えれば良い
もちろんfontやbの類は教えない。それをやってしまったら御仕舞いである、見出し要素を使って様々なレイアウトを作り出す事を覚えさせ、自然と適切な見出し構造が組めるように誘導する。時期がくれば別のスタイルシートを与えてやり、CSS次第で全く異なる見栄えになり得る事を覚えさせる。テーブルには自動的に枠線が入り、色がつく。段落からはみ出たテキストは、不自然に左端に寄る。グルーピングすれば、周囲にぐるりと罫線を引く。一通り基本的な要素を覚えさせた後で、初めてCSSの書き方を教授するのだ。生徒たちの頭の中には、既に色々なレイアウトを試してみたいという欲求が起きている事だろう。
賢明な人は、「それではHTMLがまるでWebレイアウトのための言語みたいじゃないか」と思われるかもしれない。実の所私はそれでも良いと思っている。正確に言い直せば、「CSSで整形したHTMLが」だが。彼らの望んでいるのはWebサイトの構築である。欲求と直接関係無い“(彼らにとっての)例外”についてあえて序盤で触れる必要は無いだろう。そういった薀蓄は、XMLに入る辺りからでも充分遅くない。

教え方の壷

ここで重要なのは、スタイルが全てCSSによって制御できる事を自然に理解させる事である。そして見出し要素の重要性をもだ。HTMLの要素=スタイルという方程式を崩し、文書構造の大切さを学ばせる。もし初めから完成したスタイルを与えていなかったならば、h1は文字サイズを大きくするもの、pは改行2つと覚えるだろう。そして何時まで経ってもさっぱり“ほ〜むぺーじらしく”ならない事に苛立ちを覚え、どこぞのほ〜むぺーじ入門から引っ張ってきたfontやらmarqueeやらを使い出すかもしれない。
正しい事ばかりをただひたすらに教えるばかりでは、学者としては良いかもしれないが、教師としては失格だ。学ぶ事に意欲を与え、自主的に答えを見出させるのが教育である。ただ単純に引っ張っていくだけなら誰にだって出来る。生徒が大いなる間違いを犯した時にだけ、暖かくその背中を押してやれば良い。
現時点では、少なくとも私には他人に教えられるような資格は無い。相変わらず自身のエゴを押し付けようとしているからだ。下らない主義主張を捨て、教わるものの立場に立って初めてその気持ちが理解出来るのかもしれない。