少ないコードでそのhtmlファイルでしか使っていない場合、
<head></head> のタグの中にcssを記述したりしていますが、ときどき、<body></body>タグの中に記述しているソースも見かけますが、<body>の中に書いた方が良いケースもあるのでしょうか?気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
CSSを記述するstyle
要素の場合、原則としてhead
要素内にのみ記述します。body
要素内には記述できません。
(W3CのHTML検証ツールで試しましたが、body
要素内にstyle
要素を記述する事はできませんでした。)
ただし、style
要素にscoped
属性が導入されたため、これが指定されている場合に限りbody
要素内に記述する事ができます。
hamashun me : HTML5のstyle要素が持つscoped属性について
しかし、scoped
属性に対応しているブラウザはまだ殆ど存在しません。
このため利用できる状況ではなく、scoped
属性は例外として考えたほうが良いでしょう。
JavaScriptの場合、script
要素が存在する位置でJavaScriptの読み込み・実行を行ってから以降のHTMLを解析します。
このため、head
要素内に記述されているとbody
要素内のHTMLの解析が開始されるまでに時間がかかり、表示速度が低下します。
これを避けるため、最近ではscript
要素はbody
要素内の最後に記述した方が良いと言われています。
[JS] JavaScriptの読み込み位置をページ最後にしたほうがよい理由 | memocarilog
ただし、HTML解析前に実行する必要があるJavaScriptもあるため、闇雲にbody
要素内に移動すれば良いという話でもありません。
また、以下のような意見もあります。
ssig33.com - JavaScript を最下段で読み込むのがあまり有効ではない理由
結論、
JavaScriptはbody
要素内に書いた方が良いケースも存在します。
CSSはbody
要素内には記述できません(例外有り)。
投稿2015/05/02 04:43
編集2015/05/02 04:47総合スコア697
0
ベストアンサー
CSSに関しては、bodyの中に書いたほうがいい理由は特にないと私は思います。
ブラウザはHTMLを上から順番にパースしていくので、
デザインを規定するCSSは上の方で記述または読みこむべきだと言われています。
逆にJavaScriptは、実行に時間がかかるとそこでHTMLの読み込みが中断してしまうので、bodyタグ内の一番下に書くのが良いとされています(jQueryなどのライブラリやGoogle Analyticsのトラッキングコードなどは例外で上に書く)。
なのでベストプラクティスとしては、「CSSは上、JavaScriptは下」という原則に則ってcssはheadタグの中、JavaScriptはbodyタグの一番下にまとめて書くのが良いかと思います。
ただ小さいコードだとしてもCSSとJavaScriptは別ファイルにして読み込むのがよいです。今後コードが増えた時も管理しやすいですし、一つのファイルにCSSやJavaScriptとHTMLがあんまり混在しているとコードが汚くなってしまうので・・・。
投稿2015/05/02 04:38
総合スコア462
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/05/02 10:21
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/05/02 10:05