- ベストアンサー
bodyにwidth:100%をつける理由は?
bodyにwidth:100%をつける理由は? たまに、bodyにwidth:100%をつけているのですが、理由がわかりません。 boduのwidthはブラウザの横幅ではないのでしょうか? 実際、下記コードで、両方とも結果は同じです。 <body style="background:red;width:100%"> aaaa </body> <body style="background:red;width:50%"> aaaa </body> どなたかお教えいただければ幸いです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんなところで聞いたってまともな答えは得られない。なぜ仕様書を確認しないのですか?? 4.3.3 パーセント値( http://momdo.s35.xrea.com/web-html-test/spec/CSS21/syndata.html#percentage-units ) 6.1 指定値、算出値、実効値( http://momdo.s35.xrea.com/web-html-test/spec/CSS21/cascade.html#value-stages ) 8 ボックスモデル( http://momdo.s35.xrea.com/web-html-test/spec/CSS21/box.html ) 10.2 内容の幅: 'width'プロパティ( http://momdo.s35.xrea.com/web-html-test/spec/CSS21/visudet.html#the-width-property ) 特に「10.1 "包含ブロック"の定義」 これだけの情報が絡むので、ここで説明しきれる内容ではありません。 bodyに幅を指定しても、その祖先にstaticでない参照すべき親コンテナブロックがないのですから無意味です。 html{margin:20px;position:relative;} body{width:50%;margin:0 auto;} 仕様書だけはかならず目を通しておきましょう。そうしないとつまらないところで足踏みしてしまう。 <body style="background:red;width:100%"> aaaa </body> こんなHTMLはありえません。こんなことしてるとだめです。bodyにはブロック要素しか置けません。 <!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) -- document body -->( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#edef-BODY ) それがないため、ブラウザは匿名ボックスを作ってしまいます。そうすると、スタイルシートがうまく機能しなかったり・・ ⇒メモ: CSSスタイルシートを意図した通りに機能させるには、正しい文書解析木が必要です。つまり、正当なHTMLを用いるべきです。.( http://jigsaw.w3.org/css-validator/#validate_by_input )