kojiro's html elements memo

summary

htmlの構文

structure of html
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>htmlの構文</title>
</head>
<body>
    <section>
        <h1>htmlの構文</h1>
        <p>htmlの構文のfigure</p>
    </section>
</body>
</html>

doctype

!DOCTYPEは『<>』で括られていますが、elementではありません。 読んで字のごとく、document type、文書の書式をブラウザに示すための、 宣言というか定義文です。 この例はhtml5のもので、html5はDTDをもたないため、 DTDのaddressは記されていません。 ついでと言っては何ですが、htmlのバージョン、タイプも省略されています。 文書の書式を示すものですから、当然ですがページの先頭に書きます。

doctypeに関しては、過去にさんざん悩まされました。 かなり形骸化されたもので何故書かなければいけないのか、 疑問に思っていました。 特に、DTDのアドレスは実際にブラウザが参照するハズもないのに、 長々と書かなければいけませんでした。

実情としては、ブラウザがhtmlの後方互換の対策として、 解釈エンジンの切り替えスイッチとして用いていたのでは?。 現状では、ほとんどのブラウザが、 このシンプルなdoctypeで正常にレンダリングしてくれるようです。 シンプルなことはいいことだ~。

html

<html>でhtmlの記述の開始を明示的に示し、 </html>で記述の終了を明示的に示します。 htmlの記述は非常にシンプルで、<html lang="ja">のように、 elementとattributeを『<>』で括った、 通称tagでmark upします。

elementは、global attributes(全てのelementに適用される属性)、 とcontent attributes(element固有の属性)を持ちます。 elementとattributeの意味を理解(これが一番大変なのですが)してしまえば、 あとはサクサクと書いて、cssで見栄えを整えるだけです。

head

htmlセクションに最初のセクションとして記述します。 この部分は重要な役割を持っています。 ページの内容を正確に伝えるには欠かせないセクションです。 サンプルなので、ごく簡単に書きましたが、 実際には、webサーバ、ブラウザ、 検索エンジン等に対する様々な情報が書き込まれます。

ページには表示されないので軽視されがちですが、 この部分の記述次第でページの評価が変わってしまうかもしれません。 過剰な情報は必要ありませんが、 正確に書かないとトラブルになる可能性があるので、 慎重に・・・

body

ブラウザにページとして表示される、メインの部分です。 htmlのルールに元ずいて、記述すれば良いのですが、 html 2.0、html 3.2、等の古いバージョンでの記述はおすすめできません。 W3Cの最新勧告で廃止されている、または非推奨とされている仕様、 element、attribute、は使うべきでは無いと考えます。

framesetの使用、tableによるレイアウト、attributeによる装飾、 <br>による余白の確保、などは避けるべきでしょう。 ほとんどのブラウザは、 後方互換性を持つため正常に表示はされるとは思いますが、 siteを閲覧するのは一般ユーザだけではありません。

特殊なケースは別ですが、wed siteを書く以上は多くの方に、 accsessしてもらいたいのが人情だと思いますと。となると、 検索エンジンの存在は無視できません。 国内の、検索エンジンの事情としては、Yahoo、Google、 がタイアップしており、 実情としてはgoogleが90%程度のシェアーを持つと思われます。

web siteはdocumentの内容が一番大事なのですが、 同じ内容であれば、 htmlが適切に書かれている方が、検索エンジンに対しては有利ですし、 googleにindexされる可能性は高いと思います。 bodyへ記述はそのへんのことも考慮して・・・