HPを作っています。
メモ帳に自分でタグを打って作っていて、ページ自体は完成しちゃんと表示もされるのですが、HEADタグに書くことと、宣言すべきドキュメントタイプというのがわかりません。
この二つは、必ず書かないといけないものなのですか?
また、使用環境等に関係するのでしょうか。
使用環境は、Win me、IE 5.5です。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

sightさんに多少補足しておきます。



>宣言すべきドキュメントタイプ
は必須です。

私もテキストエディタ派ですが、本屋さんで参考本などを読むと
●一行目には文書型(ドキュメントタイプ)宣言を書く
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> などの例は書いてありますが
#肝心な理由が書かれていない
という本が多いような気がします。

その理由をここに書こうとすると、説明長い&難解気味になりそうなので

■DOCTYPE 宣言による「解釈モード」の切り替え
http://www.remus.dti.ne.jp/~a-satomi/bunsyorou/D …

をご覧になって下さい。解りやすいと思います。
---

>HEADタグに書くこと
必須なのは<title>です。

(HEAD内の)その他の要素は不要に思うかもしれませんが、簡単に言うとサーバとクライアント(ブラウザ)とのやりとりに使われています。サーバにも種類/設定がいろいろありますので、メタ要素で特定された HTTPヘッダーを送るとは限りません。
#サーバーから送られない場合でも、META要素が書いてあればブラウザが認識するケースもあります。
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS">
を書いたら文字バケ(日本語の文字コード判定ミス)が解消された、なんて話しはよくききますよね。

META要素のHTTP-EQUIV属性:文書の文字コード・スクリプトの種類・スタイル言語など
は書いておいたほうがいいと思います。
---

>使用環境等に関係するのでしょうか。
chidoriさん以外の方の使用環境等に関係する、ですね。

参考URL:http://www.remus.dti.ne.jp/~a-satomi/bunsyorou/D …
    • good
    • 0

一応、HTML4.0の仕様的にいいますと、



ドキュメント型宣言:  必須です。
HEAD要素:  必須・・・ではないです。けど、HEAD要素の中に入るTITLE要素が必須ですので、省略しないで書きましょう。

ない場合は、HTMLとして間違っているけれどもIEやNNが勝手に解釈しててきとーに表示してくれているだけです。
    • good
    • 0

あまりIEでちゃんと表示されるからという理由でOKを出すのはマズイかと


思いますよ。
と、いうのはIEの場合、終了タグ</~>というのが無くても勝手に
表示してしまうということがあるからです。
(NetscapeCommunicator6.0からは、ほぼ同じ動きをするようになりましたが)
通常は<~>から</~>までをひとくくりとし、その中をタグで書かれた事で
制御するということなので、"IEで表示してOKだから"というかIE自体
チェックする機能が甘いです。
(公開したと同時にNetscapeのユーザから"見れねぇよ"と言われることが
あるかも知れませんね)

>HEADタグに書くこと

通常Headタグの中に書くのは、そのページのタイトル名くらいですけど...
"必要と思われるものは"ということでですが。

>ドキュメントタイプというのがわかりません。

まぁ最近のブラウザであれば、ある程度文字コードを認識してくれて、
表示してくれますが、"文字が化けて読めない"ような苦情があれば、
ドキュメントタイプを指定した方が良いでしょうね。
まぁ、通常で見れるようであれば(IEじゃなくてNC4.7xとかで検証)、
無くても構わないでしょう。

Metaタグは特に必須ということでは無いし、表示する事に関しては特別
なにか制御するわけでもないので、わからないうちはいらないと思います。

ロボットやクローラ系の検索エンジン(紳士的なもの)に自動で登録して
欲しくないとか,こういう検索キーワードで自分のページを検索されたい
場合には付けておいた方が便利でしょうね。
(ロボットやクローラでの検索エンジン自動登録拒否は紳士協定ですので、
そういうものを無視してるような、検索エンジンにはひっかかります。
Exciteなんかの紳士的じゃないところはね。)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QHEADタグとheaderタグ

HTMLでHEADタグとheaderタグは何が違うのでしょうか?

CSSを宣言するのはHEADタグ内だと思いますが
では、headerタグはどういう時に使用すればいいのでしょうか?

Aベストアンサー

HTMLの基本は
<body>
 <head>
  ・・・このHTML文書のヘッダ・・(画面には表示されない)
  スタイルシートやmeta情報などはここに書かれます。
 </head>
 <body>
  ・・・本文
 </body>
</html>
です。
 header要素は、HTML5で登場した本文中の導入部やナビゲーションをグループ化する要素です。

 HTML4.01~XHTML1.1でページを作成されていたと思いますが、それらには文書構造を示す要素がありませんでした。文書構造は
『DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加する( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#h-7.5.4 )』と、明記してあった!!
 そのため、
<body>
 <div class="header">
  導入部やナビゲーション
 </div>
 <div class="section">
  本文
 </div>
 <div class="footer">
  文書情報など
 </div>
</body>
とマークアップされてきたと思います。
 ところが、仕様書をろくに読まない人が多く。
<body>
 <div id="top">
  導入部やナビゲーション
 </div>
 <div id="content">
  本文
  <div id="leftMenue">
  </div>
 </div>
 <div id="bottom">
  文書情報など
 </div>
</body>
のように、文書構造ではなくプレゼンテーション的なidやクラス名を使用する人があとをたちません。
 それでは、何のためのHTMLかわからない。検索エンジンは無論、だれにも何処が導入で、本文で、本文と関係ないのかさっぱり分からない!!
 その反省から、
★HTML5 では、文書をよりよく構造化するために、次の要素が新しく追加されました。( http://standards.mitsue.co.jp/resources/w3c/TR/html5-diff/#new-elements )
section、article、aside、hgroup、header、footer、nav、figure、figcaption
 ★hgroupは採用されない見込み
 ★アウトラインには影響しない、一箇所しかつかえないがmain要素が追加見込み

ということです。
 ですから、従来 1999年のHTML4.01の勧告以来・・
<body>
 <div class="header">
  <h1>ページタイトル</h1>
  <div class="nav">
   <ol>ナビゲーションリスト</ol>
  </div>
 </div>
 <div class="section">本文ブロック</div>
 <div class="footer">文書情報</div>
</body>

 ・・・・と書かれてきたと思いますが、それを

<body>
 <header>
  <h1>ページタイトル</h1>
  <nav>
   <ol>ナビゲーションリスト</ol>
  </nav>
 </header>
 <section>本文ブロック</section>
 <footer>文書情報</footer>
</body>
と書きなさいという事です。

<head>はHTML文書のヘッダで表示されない情報
<header>は、本文のうち「導入部やナビゲーション」をまとめる要素

HTMLの基本は
<body>
 <head>
  ・・・このHTML文書のヘッダ・・(画面には表示されない)
  スタイルシートやmeta情報などはここに書かれます。
 </head>
 <body>
  ・・・本文
 </body>
</html>
です。
 header要素は、HTML5で登場した本文中の導入部やナビゲーションをグループ化する要素です。

 HTML4.01~XHTML1.1でページを作成されていたと思いますが、それらには文書構造を示す要素がありませんでした。文書構造は
『DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を...続きを読む

Q【xhtml】xhtmlでは、タグは小文字で書かなきゃいけないが、JavaScriptの記述はどうすべき?

表題の通りなのですが、
xhtmlって、タグを小文字で書かなければいけないことになってますが、そこにjavascriptを記述するとき、
大文字小文字については、どのように書くべきでしょうか?

なお・・・
(1)rfc的に間違ってない。

(2)UserAgentにおける互換性に問題がない

の両方を、満たしたいと思います。

。。。が、無理なら、(2)のみ満たせればOKです。

以上、よろしくお願いいたします。

Aベストアンサー

JavaScriptで何をするときのことでしょうか。
JSでは大文字と小文字は完全に区別されるので異なっていたらエラーに
なります。

因みに、XHTMLとしてはエレメント名は小文字でなければいけないと
なっていますが、実際には大文字で書いても問題なかったりします。
その辺りはブラウザ側の解釈次第ですね。

Qheadタグのprofile属性の意味

headタグのprofile属性の使い方がよく分かりません。

自分でも検索してみたのですが、profile属性の値には
「メタデータプロファイルを記述したURI」
を記述するそうですが、よく分かりません。

profile属性とその値の意味について教えていただけますでしょうか?

Aベストアンサー

通常のサイト制作では、profile属性は無視して構いません。
と言うよりprofile属性を利用したサイト制作をする場面はまずないかとおもいますが…

profile属性には、ファイルのURI(アドレス)を指定します。
このファイルは、METAタグのname属性と属性値の意味を定義するファイル(文章)です。
例えば、<META name="chosaku" content="OKwave">というメタタグは、chosaku属性がOKwaveである事を意味しますが、chosaku属性とは何か?は定義されていません。それを定義づけるファイルをHEADタグのprofile属性で指定する訳です。

しかし、現実的にはMETAタグのname属性は、
1)ブラウザに依存する情報…制作者への連絡先など
2)クロールロボットに依存する情報…キーワードなど
のいずれかに利用する程度でしかなく、しかもそれらはprofile属性を無視してブラウザやクロールロボットが勝手に判断していきます。
又、それ以外の目的でname属性を利用し、メタデータプロファイルを作成したとしても、メタデータプロファイルを読み込むブラウザはまず無い(無視される)のが普通です(少なくとも私はメタデータプロファイルを利用してくれるブラウザを知りません)


しかも、肝心のメタデータプロファイルの記述方法についてはHTMLの決まり(HTML4.01DTD)では指定されていないので…

なんらかの研究目的、又は論文などのHTML化でもない限り、メタデータプロファイルを利用する事はない=profile属性は使わないと考えて問題ないかと思います。



質問内容(profile属性の使い方)とは少しずれた回答になりますが、それでも尚profile属性の使い方について勉強の要がありましたら、残念ながら国内(日本語)ではメタデータプロファイルに詳しいサイトは皆無ですのでW3C等の海外サイトで捜す事になるかと思います。

通常のサイト制作では、profile属性は無視して構いません。
と言うよりprofile属性を利用したサイト制作をする場面はまずないかとおもいますが…

profile属性には、ファイルのURI(アドレス)を指定します。
このファイルは、METAタグのname属性と属性値の意味を定義するファイル(文章)です。
例えば、<META name="chosaku" content="OKwave">というメタタグは、chosaku属性がOKwaveである事を意味しますが、chosaku属性とは何か?は定義されていません。それを定義づけるファイルをHEADタグのp...続きを読む

Q自分で内をかけない場合に、METAタグはどうやって記述したらいいですか?

会社のWebがCMSを採用しています。

CMSに備え付けの、WISYWIG な HTMLエディタにより
<body></body>内にコンテンツを記述し、
SQLサーバーに登録しておくと、
テンプレート(<html><head></head><body> から </body></html>の間)
に登録したコンテンツが表示されるというシステムです。

ここで、問題があります。

検索エンジンで、「東京 キャベツ」と入力したら、
このページがトップに現れるように設定したい場合、HTML側のヘッダに
<meta name="keyword" content="東京,キャベツ">
と記述しておくものと理解しています。

しかし、弊社のCMSでは、<head></head>内を自由に記述できないので、
どうしたらいいか悩んでいます。
<body>タグ内に、

<body>
<meta name="keyword" content="東京,キャベツ">
<meta name="description" content="大人気の東京キャベツを紹介、販売しているページです">
</body>

なんてやってはだめですよね?

何かうまい方法があったら教えてください。

本商品の広告チラシに、よく電車広告などで見かける、

   [東京 キャベツ][検索]

みたいな検索窓も表示したいと考えています。

会社のWebがCMSを採用しています。

CMSに備え付けの、WISYWIG な HTMLエディタにより
<body></body>内にコンテンツを記述し、
SQLサーバーに登録しておくと、
テンプレート(<html><head></head><body> から </body></html>の間)
に登録したコンテンツが表示されるというシステムです。

ここで、問題があります。

検索エンジンで、「東京 キャベツ」と入力したら、
このページがトップに現れるように設定したい場合、HTML側のヘッダに
<meta name="keyword" content="東京,キャベツ">
と記述...続きを読む

Aベストアンサー

metaタグはちゃんとheadの中に書いた方が良いです。書式を守らないのは逆効果になる可能性さえあります。
なんとかしてテンプレートを書き換えるのが良いと思います。


質問とは少し違いますが私はmetaタグ重要だと思いますよ。
むしろ重要なものが増えてきてその中の1つになったという方が適切に思います。
私の個人的なサイトのmetaタグからあるキーワードを抜いたら、その2週間後くらいにはその検索ワードでの表示順が100位より後になっていたことがあります。
2008年のことなので、そんなに古いデータではないでしょう。

2つの同じレベルのサイトがあってmetaタグ意外に比較する要素が無い場合、metaタグを書いて損があるということはありません。
徹底したSEOには確実に必要です。
内容が回答でなくてすみません・・・

Qheadタグの記述について

headタグの記述について質問させてください。
ページ作成時にPHP等で読み込みファイル(インクルードファイル?)を使用する際、
読み込まれる側のHTMLファイルは「head」「body」などの
タグの記述を省きますよね(たぶん)。
これはどうしても省かなくてはいけないのでしょうか?
各ファイルに外部CSSへのリンクを張りたいのですが、
HEADタグがない場合はどうしたらいいのでしょう?
こういった読み込みファイルを扱うのが初めてで、どう対応したらいいのかがわかりません。
どなたかわかる方いたら教えてください。

Aベストアンサー

省かずに書くと、インクルードした部分で唐突に<head>云々がでてきてびびります(^^;

p1.phpというファイル(ページ)にh1.htmlというファイルをインクルードするとします。そのh1.htmlに<div calss="hogehoge"></div>があったとして、そのhogehogeクラスに適用するCSSを、p1.phpで読んでいるの外部cssファイルで書けば読んでくれ・・・る筈です。

以下の環境ではできました。
php5
IIS5
winXPsp2
ソースはxhtml 1.0 で文字コードはutf-8


人気Q&Aランキング

おすすめ情報