CSSの設定で、わからないことが…



0   名前: css…?? : 2006/09/26(火) 21:54  ID:fXo6N.b1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
HTMLの質問に対する回答を見ていたのですが、CSSの設定で 意味のわからないことがあったので お聞きしたいのです。

−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<meta name="robots" content="NOINDEX,NOFOLLOW">
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css">
<!--
html,body{overflow:hidden; height:100%; margin:0; padding:0;}
body{border-right:1px dotted black;}
-->
</style>
<title>タイトル</title>
</head>
<body>
内容
</body>
</html>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

このコードですが、html,body{overflow:hidden; のhtmlに対して何故CSS設定しているのでしょうか?又、overflow:hidden;はどのような意味で設定しているのでしょうか?
overflow:hidden;の意味はわかりますが、なぜhtml,bodyに対して…?

そんな基本的な質問を…、かもわかりませんが、よろしく御願いします。

1   名前: はな : 2006/09/26(火) 21:54  ID:fXnL3zQw
インラインフレームを使ったサイトで使うとよく分かります。
インラインフレームのサイズからはみれた部分やスクロールバーが表示されなくなります。
ちなみに、CGI読めない自分にとって唯一使ってるhiddenですね。

2   名前: 匿名 : 2006/09/26(火) 21:54  ID:i4s77xzC
>>0
> htmlに対して何故CSS設定しているのでしょうか?

CSSの一番外側のボックスはhtml要素が提供する。その中にbody要素のボックスが配置される。
borderでも引いて実験してみればすぐ理解できるだろう。
# ちなみに、html要素とbody要素にそれぞれ異なるbackground-imageを指定することも可能だ。

ただし、古いブラウザ、及びIE6/Winの互換モードでは最外のボックスがbody要素になる。
だから、互換性を考えるなら両方に指定しとけ、となるわけだ。

> overflow:hidden;はどのような意味で設定しているのでしょうか?

擬似的なフレーム(position:fixedを使わずにボックス固定)という可能性もあるし
ひょっとしたら本気でスクロールバーはイラネ、なのかもしれない。
そのソースだけではわからない。

ちなみに、MacIE5だと中身が表示されなくなるので注意。
# まぁMacIEは終わったブラウザだから個人レベルでは気にする必要はないかも。

3   名前: css…??  : 2006/09/26(火) 21:54  ID:KwguCfJP
みなさん 御世話になりました。
インラインフレームは利用していなかったので、そういうことでしたか。
ほとんどBOXですませていますので。更新情報などに利用するなら、y方向のスクロールはあったほうがいいて゛すよね、と思いますが。

>html要素とbody要素にそれぞれ異なるbackground-imageを指定することも可能だ。
早速、試してみます、ありがとう御座いました。

一覧へ戻る