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

このQ&Aのポイント
  • IE6で上の段を固定したまま、下の段だけスクロールできる方法はありますか?
  • 上下2段のフレームを作成し、上の段を固定させたいが、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; }

  • HTML
  • 回答数1
  • ありがとう数2

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

  • ベストアンサー
noname#66720
noname#66720
回答No.1

擬似フレームを使います。 簡単なソースはこんな感じで <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

pai3_14
質問者

お礼

早速のご回答ありがとうございました。 疑似フレームですか。一回試したんですが、何となくうまくいきませんでした。 結局、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; }

関連するQ&A

  • スタイルシートに関して

    最近、スタイルシートの勉強を始めました。 下記の様なCSS,HTMLを作成しブラウザーで表示するとIEは意図通りに IE以外(FireFox,Opera等)ではIEと違う(意図と異なる)表示になり 悩んでいます。 表示したい内容 黒いベース(300px,300px)の上に紫の四角(200px,200px)、さらにその上に緑の四角(100px,100px)を配置したい。 配置は、ブラウザーの左上隅より中心を上から150px,左から150pxとし3つ共に中心を合わせる。 IEでは、意図通りに表示 IE以外では、上にスペースが空き、各boxの表示位置が上にずれている CSS .box0 { width:300px; height:300px; background-color:#000000; } .box1 { margin-top:50px; margin-left:50px; width:200px; height:200px; background-color:#ff00ff; } .box2 { margin-top:50px; margin-left:50px; width:100px; height:100px; background-color:#00ff00; } HTML <BODY> <div class="box0"> <div class="box1"> <div class="box2"> </div> </div> </div> </body> *内容が悪いよとかCSSではできないよなどご意見・アドバイス頂ければ幸いです。

    • ベストアンサー
    • HTML
  • css box ieだけ中央寄せ出来ない

    サイトを作っています。CSSのBOXを使って、メイン部分を構成しているのですが、IEだけ中央寄せされません。どのようにすれば解決できますか?できれば<div style="text-align:center">内容</div>は使いたくないです。 <style type="text/css"> <!-- body { background-color: #EEEEEE; } .mainbox{ width:900px; height:1000px; padding:6px 6px 2px 2px; border:8px; margin-left: auto; margin-right: auto; text-align:left; background-color:#bde9ba;} body { overflow: hidden; } --> </style> <div class="mainbox"> 内容 </div> 質問に関係ありませんがクローム、オペラ、モジラでは正常に表示できるのになぜIEだけはちゃんと働かないのでしょうか? IE迷惑ですw

    • ベストアンサー
    • CSS
  • リンクのスタイルシートについての質問

    スタイルシートを作成しています。 リンクにアクションをつけたのですが 思うような動作にならずに、悩んでします。 ちなみに動作確認はIE6で行っています。 ◆現在の動き リンクにマウスをのせると箱が上下に動いてしまう。 ◆どうしたいか リンクにマウスののせても箱が上下に動かないようにしたい。 固定したいとうことです。 以下に作成したソースをのせておきますので わかる方いましたら教えていただけると幸いです。 a.menu01{ text-decoration:none; text-align: center; border:#FFF solid 1px; background-color:#DACD96; width:280px; font-size:15px; font-weight:bold; color:#FFF; padding:5px; display:block; letter-spacing: 5px; margin-bottom:10px; } a.menu01:active { margin-bottom:10px; } a.menu01:visited{ margin-bottom:10px; text-decoration:none; } a.menu01:hover { text-decoration:none; color:#AA8B62; background-color:#FFFFFF; margin-bottom:10px; }

  • イメージマップの画像がIE6でリンクされません

    依頼されたページを作成中ですが、 イメージマップで作成した部分がIE6のみリンクされず困っております。 IEテスター(http://coliss.com/articles/browser/ie/928.html)にてIEの各バージョンで動作確認しました。 バグなのか何なのか分からないので、どなたか詳しくご教示頂ければ幸いです。 ■CSSデータ *{ margin:0px; padding:0px; } html { scrollbar-face-color: #F5E1D8; scrollbar-highlight-color: #FFFFFF; scrollbar-shadow-color:#F5E1D8; scrollbar-3dlight-color: #F5E1D8; scrollbar-arrow-color: #FFFFFF; scrollbar-track-color: #FFFFFF; scrollbar-darkshadow-color: #FFFFFF; } body { margin:0 auto 0; background-color: #FFFFFF; font-family:sans-serif; font-size:8pt; } form { margin:0px; scrollbar-face-color: #F5E1D8; scrollbar-highlight-color: #FFFFFF; scrollbar-shadow-color:#F5E1D8; scrollbar-3dlight-color: #F5E1D8; scrollbar-arrow-color: #FFFFFF; scrollbar-track-color: #FFFFFF; scrollbar-darkshadow-color: #FFFFFF; } #container { width:950px; margin:0 auto 0; background-color:#FEFBEE; } #logo{ margin-left:80px; height:150px; } #box1 { text-align:center; line-height:20px; height:100px; } #box2 { text-align:center; line-height:20px; height:150px; } #box3 { text-align:center; line-height:20px; height:70px; } #box4 { text-align:center; height:300px; background-image: url(../img/top_haikei.jpg); background-repeat: no-repeat; background-position: center bottom }

    • ベストアンサー
    • HTML
  • min-width?を使って背景にスクロールを出さない

    body内にcssでbox1をおき、そこに固定背景を指定しています。 その中にさらにbox2を置いています。 box1の幅が1000px、box2の幅が600pxだとします。 できれば、横スクロールをbox2の幅以下で出したいのです。 min-widthではIE6等には利きません・・・。 ハック、javascriptもかわまないので、どなたか効率のいいやり方を伝授していただけないでしょうか? よろしくお願いします。 何もない状態のcssを書きます。 ■CSS body{ } .box1{ width: 1000px; height: 500px; margin: 10px auto; background-color:#000; text-align:center; } .box2{ width: 1000px; height: 300px; margin: 100px auto; background-color:#fff; } ■HTML <body> <div class="box1"> <div class="box2"> </div> </div> </body>

  • FORMのサイズがIEとFirefoxで違って困っています!

    依頼されて問合せフォームを作成しているのですが、 <input type="text">や<textarea>の部分がIEとFirefoxでサイズが違ってしまい、綺麗に表示されません。 IEで丁度いい大きさにsize指定すると、Firefoxでは大きすぎ、 Firefoxで丁度いい大きさにsize指定すると、IEでは小さすぎます。 初心者でよく分からず、大変困っております。 どなたかご教示頂きたく、よろしくお願い致します!! 【(1)のCSS】 html { scrollbar-face-color: #F5E1D8; scrollbar-highlight-color: #FFFFFF; scrollbar-shadow-color:#F5E1D8; scrollbar-3dlight-color: #F5E1D8; scrollbar-arrow-color: #FFFFFF; scrollbar-track-color: #FFFFFF; scrollbar-darkshadow-color: #FFFFFF; } body { margin:0 auto 0; background-color: #FFFFFF; font-family:sans-serif; font-size:8pt; } form { margin:0px; scrollbar-face-color: #F5E1D8; scrollbar-highlight-color: #FFFFFF; scrollbar-shadow-color:#F5E1D8; scrollbar-3dlight-color: #F5E1D8; scrollbar-arrow-color: #FFFFFF; scrollbar-track-color: #FFFFFF; scrollbar-darkshadow-color: #FFFFFF; } input { font-size:12px; } #container { width:957px; margin:0 auto 0; background-color:#FFFFFF; } #logo{ margin-left:80px; height:120px; } #box1{ text-align:center; line-height:20px; height:100px; } #nyuryoku{ margin:0 auto 0; width:418px; height:600px; background-image: url(../img/sinki_waku.gif); background-repeat: no-repeat; background-position: center center } #box2{ clear:both; text-align:center; line-height:20px; width:957px; height:250px; background-image: url(../img/top_haikei.jpg); background-repeat: no-repeat; background-position: center bottom } #button{ margin:0 auto 0; width:418px; }

  • スタイルシート 継承??

    以下のスタイルシートで質問が3点あります。 (1) * {} は、何を表して、どこに影響を与えるのでしょうか? (2) h2#testは、上のh2の属性を継承し、font-sizeだけ上書きしています。   継承させない方法はあるのでしょうか? (3) 最後の#sample ul li img は4つ並んでいますが、これをする意味が知りたいです。   優先順位など規則があるのでしょうか? * { margin:0px; padding:0px; } body{ color: blue; background: red; } h2 { margin:10px; padding:10px; font-size: 20px; color: yellow; background: blue; } h2#test { font-size: 10px; } #sample ul li img { height:12px; margin-right:5px; }

  • css IE7でスクロールすると背景が消えてしまう・・

    IE7でスクロールすると背景が消えてしまうのですが、何か解決法はありませんでしょうか?IE6とFirefoxでは問題ありません。検索して、いろいろ試してみたのですが、ダメでした。 該当のCSSはこんな感じです。 #MVP { display:table; overflow:none; z-index:4; line-height:19px; height:100%; text-align:left; padding:0px 20px 0px 20px; margin-top:0px; margin-bottom:0px; margin-left:auto; margin-right:auto; width:500px; background:url(http://hime-blog.jp/img/backtable.png); } * html #MVP { width:540px; background-image:none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://hime-blog.jp/img/backtable.png',sizingMethod='scale'); } *:first-child+html #MVP { } 設置ページは http://hime-blog.jp/MVP/ になります。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • HTML
  • 2カラムサイト高さ100% 左右別々にスクロール

    サイトの構成は2カラムのみのサイトで、左にナビ、右にコンテンツになります。 左右どちらもheight100%で、両方とも縦に別々のスクロールを行いたいと考えております。 そこで、main(左)とsub(右)を作りfixedで固定し、100%にしました。 その中に固定したエリアを導入しスクロールバーを表記させようと思い下記のような記述をいたしました。 main_sとsub_sのheightをpxで表記するとうまく動作します。 しかし、%にするとスクロールバーが表示されずfixedの影響で画面が固定されてしまいます。 #main{ float:left; width:400px; position: fixed; background-color:pink; height: auto; min-height: 100%; } #main_s { height:90%; overflow-y:scroll; } #sub{ float:left; width:300px; position: fixed; background-color:yellow; height: auto; min-height: 100%; margin-left:400px; } #sub_s { height:90%; overflow-y:scroll; } 左右のカラムを別々にスクロールをさせたいのですが、お力添えいただけたら幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • CSS
  • IEの「カラム落ち」に悩まされています

    この2日間、IEの「カラム落ち」に悩まされています。 色々検索すると、Margin とpadding/border を一緒に使わないこと、らしいので、そのように設定したつもりなのですが...... 私の環境は、MacOS X 10.5.6 にVirtual PC-XP SP3 を載せています。 Mac safari(3.2.1)、safari-[開発]-IE6/IE7 ではカラム落ちしていないのですが、Virtual PC-XP SP3 の IE6 では見事に落ちています。 この設定を Virtual PC ではない XP/VISTA のIE6/IE7 で見たとき落ちているかどうか、教えていただけないでしょうか。 また、どこを直せば落ちないようにできるかも教えてください。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "​http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">​ <html xmlns="​http://www.w3.org/1999/xhtml">​ <head> <meta http-equiv="Content-Type" content="text/html; charset=shift-jis" /> <META name="robots" content="noindex,nofollow"> <META name="description" content="Gallery"> <title>Gallery</title> <style type="text/css"> <!-- body { margin:0; padding:0; font-family:Arial,MS UI Gothic; font-size:13px; background-color:#FFFFFF; } #wapper { margin:0 auto; padding:0; width:952px; min-height:500px; height:auto; text-align:center; background-image:url(hoge.png); background-repeat:no-repeat; backgroud-position:relative; } #header { margin:0; width:950px; text-align:right; } #header h1{ margin-top:-15px; padding-right:30px; color:#708090; } #header h2{ padding-top:30px; padding-right:10px; color:#708090; } #menu{ margin:0 0 20px 500px; } #menu a{ padding-right:5px; padding-left:5px; width:90px; display:inline; text-decoration:none; } #menu a:hover{ color:#FFFFFF; background-color:#FF7F50; } #left{ margin:320px 15px 20px 30px; width:310px; height:auto; text-align:left; line-height:150%; float:left; } #left h2 { padding-left:25px; background-color:#FFFFFF; } .under_l { margin-top:-45px; margin-right:531px; background-color:#FF7F50; } #right{ margin:0px 15px 20px 30px; width:549px; text-align:left; line-height:150%; min-height:400px; float:left; } #right h2 { padding-left:25px; padding-bottom:10px; background-color:#FFFFFF; } .under_r { margin-top:-35px; margin-right:292px; background-color:#FF7F50; } #right ul { list-sytle-type:disk; list-sytle-position:inside; color:#708090; } #right li { width:251px; float:left; } a { text-decoration:none; } a:hover { background-color:#FFEBCD; } #footer { margin:25px 20px; font-size:x-small; text-align:center; clear:both; } strong { color:red; font-weight:bold; } --> </style> </head> <body> <div id="wapper"> <div id="header"> <h2>pagetitle</font></h2> <h1>pagetitle</h1> </div><!--end header--> <div id="menu"> <hr> <a href="#">Index</a> <a href="#">Top</a> <a href="#">Gallery</a> <hr> </div><!--end menu--> <div id="left"> <h2>Gallery</h2> <div class="under_r">&nbsp;</div> <p> 左カラム<br /> </p> </div><!--end left--> <div id="right"> <h2>右カラム</h2> <div class="under_l">&nbsp;</div> </div><!--end right--> <div id="footer"> <hr> Copyright (c) All Rights Reserved </div> </div><!--end wapper--> </body> </html>

    • ベストアンサー
    • HTML

専門家に質問してみよう