おすすめのモーニング・朝食メニューを教えて!

ソースを作る時に、
<title>タグと<meta>タグは、
どちらの方が上に書くべきですか?

A 回答 (4件)

<title> が先頭にあれば、より早くタブのタイトルを表示しますが、タイトルにマルチバイト文字が含まれているなら <meta charset> を上位に置かないと文字コードを判定できないかもしれません。


文字コードの判定基準はサーバサイドの設定や XHTML, HTML によって変わります。

■XHTML
始めに <?xml version="1.0" encoding="UTF-8"?> で宣言するので、<head> の先頭に <title> を置いて問題ありません。

■Content-Type: text/html: charset=UTF-8
サーバサイドで「Content-Type: text/html: charset=UTF-8」を返しているなら、HTMLボディを読み込む前に文字コードが確定しているので <title> を先頭に置いても構いません。
ただし、ローカルファイルでテストする前提があるなら、<meta charset> を先頭におく必要があるでしょう。

■<meta charset> 以外の <meta>
<meta charset> 以外の <meta> は <title>, <meta charset> よりも優先順位が下がります。

重要なのは文字コード判定を <title> よりも先に認識させることです。
その点を意識していれば、自ずと答えが見えてくると思います。

# Re: uluemyocddvさん
    • good
    • 0

古い話ですが、<meta charset>を先頭 256 バイト以内に書かなければ、問題が発生する実装がありました


http://support.microsoft.com/kb/928847/ja

メタ情報が HTML の先頭にあれば、効率的に処理できる場合も多いので、
できれば <meta> は <head> の最初に書いておくべきでしょう。

<title> もメタ情報の一種ではありますが、優先順位としては <meta charset> より劣ります。
    • good
    • 0

META要素の内容によります。


meta要素は、コンピューターに対して情報を伝える物です。
 詳細は『META要素( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )』
title要素は、そのページのタイトルを示す物です。
 詳細は、『TITLE要素( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )』

 このように、TITLE要素もADDRESS要素、INS及びDEL要素、title属性、cite属性と同様にMETAとして機能します。

 そのために、同じMETA要素でも、必ずTITLE要素より先に出現しないとならないものがあります。
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
この文書で使用している文字コードを示す物ですから、TITLEが日本語(Shift_JIS)で書かれているのでしたら、TITEL要素が登場するより前に書いてなければなりませんね。他にもkeywordやdescriptionなど、日本語が現れるならそれより前に書く必要があります。
 同様の理由で、スタイルシートやjavascriptが書かれているなら、それが登場するより先に、
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
を書いておかなければなりません。

 何はともあれ、HTML 4.01 仕様書邦訳( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )だけは目を通しておくこと。最初は理解なんて使用とは思わず、ざっと読み流して概略と、必要なときどこを読めば良いか位は見つけられる様になるだけでよい。
 そして、HTMLを書いたらAnother HTML Lint - Gateway( http://www.htmllint.net/html-lint/htmllint.html )などでチェックしてみたら.このあたりの細かい事は指摘してくれます。
    • good
    • 0

私は書いたことがないなあ。


どちらでもいいんじゃないの。

このページでは<meta>が先になってるよ。
    • good
    • 0

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


おすすめ情報