表示確認どうしていますか?――文法チェッカーの活用
よく、「このサイトはWinXP+IE6.0でのみ確認しています。Macでは表示がおかしくなると思います」などと説明してあるサイトがあります。
でも、本来それは変な説明なのです。
HTMLはもともと「環境に依存しない」ことを大前提につくられています。
ですから、それがMacだろうがWinだろうが、IEだろうがFirefoxだろうがOperaだろうがSafariだろうが、音声ブラウザであろうが情報伝達に支障があってはいけません。
ただ、ブラウザによって文法に甘かったり厳しかったりまあ色々なわけです。
少々のタグの閉じ忘れがあったとしても、問題なく表示されるブラウザもあったり、致命的な問題を起こすブラウザもあったりします。
つまり、自分で確認できる環境で正常に表示できたからといって、そのHTMLにエラーが無いということにはなりません。そして、エラーがあれば、自分以外の環境のかたで問題が起きることもあるのです。
では、エラー(ミス)がなければどうかといえば、さほど古い環境でないのでしたら、どのような環境であっても致命的な問題は起きないはずです。起きたら起きたで、対応できていないブラウザが悪いと開き直ることもできるわけです。
もっとも、Win+IEのように多数派だと開き直って切り棄てるのは結構度胸入りますね。私はCSSで一部Win+IEでまったく対応していない「before(after)疑似要素、contentプロパティ」を使用しています。情報伝達には支障がないので、まぁいいかと思って。
Safariでも古いバージョンだとcontentプロパティに2バイト文字を指定してしまうと、文字化けするようで、確かに私の古いSafariだと化けています。でも、情報伝達には支障ないはずです。
話逸れましたが、文法エラーさえなければ色々な環境でチェックする必要など本来無いと思ってください。
また、自分以外の環境のかたから表示に問題あると指摘された場合、自分はその環境で確認できないからどうしようもないと思わないで、まずはHTMLの文法エラーを真っ先に疑ってください。それさえ修正されれば多くは大丈夫かと。
ということで、HTML文書を作ったら、真っ先に文法をチェックすることをおすすめします。
Webから手軽にチェックできるサイトがあります。
こちらのAnother HTML-lint gatewayはたぶん現存する無料で利用できるチェッカーのうち最強だと覆います。
エラーを指摘し点数をつけてくれます。さらに、何処が何故駄目なのか、何が間違っているのかを丁寧に解説してくれます。
これを読みながら「よくできました」と言われるくらいまで修正してみることです。
それを繰り返すうちに、なんとなく何をしていいのかいけないのかということを覚えることができます。
実は夜天光も軽いエラーがいくつかあります。
CGIもなるべくエラーのないHTMLを吐き出すよう改造をかけるのですが、限界もあるし。
ということで、チェッカーで満点をとるためだけに姑息なチェッカー騙しをやるのも本末転倒ですので、ほどほどに。
でも、文法を無視し、エラーだらけのHTMLをわざわざ記述するメリットはまったく無いので、できる限り正しい記述を心がけるべきと思います。