HTMLを綺麗に保つ12の原則
2008/11/14
![]() |
Smashing Magazine - WE SMASH YOU WITH THE INFORMATION THAT WILL MAKE YOUR LIFE EASIER, REALLY. |
Chris Coyier氏がSmashing Magazineにおいて12 Principles For Keeping Your Code CleanのタイトルのもとHTMLコードをクリーンにするための12の原則を紹介している。厳密には11の原則だが、HTMLをクリーンに保つ上で実践的で効果的なものだ。WebデザイナやWebデベロッパは一度チェックしておきたい。12 Principles For Keeping Your Code Cleanで紹介されている原則を要約すると次のようになる。
[原則1] HTML 4.01を採用する場合でもXHTML 1.0を採用する場合でもStrict指定のDOCTYPEを使う
[原則2] 文字コードの指定はhead要素で一番最初に記述する。&は&のように表記する
[原則3] 適切にインデントする
[原則4] CSSとJavaScriptは外部ファイルに分離する
[原則5] タグは適切にネストする。a要素にh1要素を入れるというのはインライン要素にブロック要素を含めているという典型的な例。h1要素の中でa要素を指定する必要がある
[原則6] 不要なdiv要素を使わない
[原則7] class属性には何を意味するかを適切に記載し、将来変更するかもしれないスタイル情報などを含めない
[原則8] 書体はCSSで指定する。たとえば全部大文字で書くといったことはしないで、そういった場合にはCSSでtext-transform: uppercaseを使う
[原則9] divのid属性やclass属性に不要な情報を書かないで、代わりにbody要素のclassにコンテンツの内容を意味する言葉を指定する
[原則10] バリデーションを通してタグの閉じ忘れなどがないようにする。W3Cのバリデータが便利
[原則11] 論理的な順序で記述する。たとえばフッターは先頭ではなく末尾になるべき
[原則12] できることからする。既存のHTMLを書き換えるのは面倒だしCMSを使っている場合はおかしな記述を強要される。重要なのはHTMLをクリーンに保つ原則を知ったということにあり、次にHTMLを記述するときにできるところからはじめればいい
12 Principles For Keeping Your Code Cleanにはダメな例がコードとともに示されているため、英語が苦手という場合にも表示されているHTMLから指摘されている内容を推測しやすいようになっている。
HTMLとCSS、JavaScriptを分離すべきという説明は同じくSmashing MagazineにおいてUnobtrusive DOMプログラミングとして紹介されている。検証ツールにはObtrusive JavaScript Checkerが使えるだろう。HTMLとCSS、JavaScriptを分離して累進的に制作しようという取り組みは累進的拡張によるWebサイトの構築で紹介されている。これらの文書も合わせて参考にするといいだろう。
関連記事
- 出しゃばりJavaScriptを検出、Obtrusive JavaScript Checker登場[2008/11/5]
- Webサイト構築手法、累進的拡張を知る[2008/10/15]
- HTML 4.01の正しい記述方法、最小構成編[2008/9/30]
- JavaScriptベストプラクティス: Unobtrusive DOMプログラミングのススメ[2008/9/25]
関連サイト
ヘッドライン
- エンデバー、再び打ち上げを延期 - 打ち上げ待機中の39A射点へ落雷が発生[18:22 7/12]サイエンス
- 【レポート】姫路ソフト、神矢みのる氏とコラボしたロボットを発表 - デビュー戦も!?[15:38 7/10]エレクトロニクス
- Microsoft、Silverlight 3公開[11:57 7/10]プログラミング
- TI、3種類の医療用開発キットを発表 - ポータブル医療機器の開発を簡素化[11:38 7/10]エレクトロニクス
- 【コラム】イマドキのIDE事情 第60回 Swing用Eclipseプラグインの決定版! Visual Swing for Eclipse[11:38 7/10]プログラミング
- CSR、Bluetoothステレオヘッドセット用SDKを発表[11:21 7/10]エレクトロニクス
- 【ハウツー】サーバサイドJavaScriptライブラリ「Narwhal」のAPIを知る[09:00 7/10]JavaScript / CSS / HTML
- 柔軟性と堅牢性を実現するウインドリバーのRTOS向けハイパーバイザ[09:00 7/10]エレクトロニクス
- ジュンク堂書店、池袋本店にて「CakePHP Cafe LiveTalk」開催[09:00 7/10]プログラミング
- 【コラム】ITエンジニア "起業"という名の選択肢 第7回 Webコンテンツプロバイダーへ方向転換してみたけれど……[08:30 7/10]システム開発ジャーナル








