IE6でスクロールさせないフレームのスタイルシート

解決済みの質問

IE6でスクロールさせないフレームのスタイルシート

IE6でスクロールさせないフレームのスタイルシート
上下2段のフレームをスタイルシートで作成して、
下の方の段(mainbox)だけはスクロールさせ、
上の段(header)はスクロールさせないで固定させたいのですが、
以下のCSSでは、Geckoで表示させると意図通り
上の段が固定されるのですが、IE6では上下段とも
一緒にスクロールしてしまいます。
タグを色々試して、Webも検索してみましたがギブアップです。
どのようにすればIE6で上の段を固定したまま、
下の段だけスクロールできるのでしょうか?

body {margin:0; padding:0;
height: 100%;
}
#header{
background-color: #2F2;
position: fixed; top: 0; left:0;
height: 60px;
width: 100%;
z-index: 10;
}
#mainbox{
background-color: #7F7;
margin: 60px 0 0 0;
_margin: 0 0 0 0;
overflow: auto;
}

投稿日時 - 2008-09-11 23:33:46

QNo.4322093

困ってます

質問者が選んだベストアンサー

擬似フレームを使います。
簡単なソースはこんな感じで

<h1 id="HEADER">header</h1>
<div id="CONTENT"></div>

html,body {
height:100%;
overflow:hidden; }

#HEADER {
position:absolute;
height:50px; }

#CONTENT {
height:100%;
overflow:auto; }

#CONTENT内の一番最初の要素が#HEADERにかぶってしまうのでpadding等を指定してやってください。

ちなみに、この方法は一部のブラウザでマウススクロールでページの移動ができなくなる欠点があります。
一応、IE6とモダンブラウザは問題なかったはずなのですが、注意はしたほうが良いと思います。

この方法で都合が悪いときはjavascriptを使ってIE6以下(場合によっては7以下)をposition:fixed;に対応させてやる方法があります。
http://www.doxdesk.com/software/js/fixed.html

投稿日時 - 2008-09-11 23:46:51

お礼

早速のご回答ありがとうございました。
疑似フレームですか。一回試したんですが、何となくうまくいきませんでした。
結局、http://www.rr.iij4u.or.jp/~kazumix/d/css/sample/header_footer.html
などを参考にして以下のようなCSSで IE6/NN共何とか所望の表示ができるようにまりました。
(NNでは、ホイールでスクロールできませんが)
もう少し勉強しながらいじくってみます。

* { margin: 0px; padding: 0px;
}
body {
overflow: hidden;
padding-top: 60px;
}
#header {
position: absolute; top: 0px; left: 0px;
width: 100%;
height: 60px;
background-color: #3FFF3F;
}
#mainbox {
overflow: auto;
position: relative;
width: 100%;
height: 100%;
background-color: #BFFFBF;
}

投稿日時 - 2008-09-12 08:19:21

0人が「このQ&Aが役に立った」と投票しています

回答(1

新着

あなたの愛車は今いくら?

愛車無料査定Q&A特集

ニキビケアQ&A特集

スッピンでも輝くモテ美肌に。

教えて!みんなの婚活Q&A特集

みんなの婚活体験談、秘訣がいっぱい!

お部屋探しはCHINTAI

マチから探せる新しいお部屋探し!

注目ピックアップ

OKちゃんねる

OKWaveからみなさんに質問!

OKWave2009年ランキング

話題のQ&Aをランキングでご紹介!

スタッフブログ

知って得する!お得な情報をお届け!

おすすめリンク