- ベストアンサー
横方向のスクロールをなくしたい
縦3分割(cols="*,700,*")のフレームにし、真ん中だけ遷移させるページを作成しているのですが、CSSで、 body{ overflow-x:hidden; } と設定しているのですが、横方向にスクロールされてしまいます。フレームの値(width)より真ん中のページに置く幅の値が等しいか同値であるのですが、何か設定が要るのでしょうか? 因みに縦はスクロールします。(真ん中のフレームのみ) 考えてみましたが、結論が出そうになかったので教えてください。お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
こんばんわ。 仮にこうフレーム設定したとすると。 <html> <head> <title>frameサンプル</title> </head> <frameset cols="*,700,*"> <frame src="sample1.html"> <frame src="sample2.html"> <frame src="sample3.html"> </frameset> </html> こんな感じで、真中のフレームページを<div>で囲ってみては如何でしょうか? ■sample2.html <div style="width:660;overflow:hidden;"> <img src="test.jpg" width="800"> </div> 他に方法があるのかは分りません。 それでは。
その他の回答 (2)
- go6n
- ベストアンサー率21% (3/14)
私も補足説明です。ご参考までにどうぞ。 bodyに対してoverflow-xを設定すると、 「横スクロールバーは表示されないけれど、横方向にスクロールできる」ようになります。 (これを逆に利用して、見えない部分に隠し要素を置いたりする方も見かけます。) スクロールさせたくないという時は、GX71さんの方法で上手くいくはずです。 もし、それでも上手くいかないなら、IE以外のブラウザを使っていませんか? overflow-x、overflow-yはIEのみに対応しています。 NN等では上手く動作しないと思います。(overflowはNNも対応しています。) また、閲覧者様がIE以外のブラウザということもあると思います。 widthやheightを設定していればスクロールバーは消えるので、私はブロックで区切ることをお勧めします。 素敵なページが作れますように!
一応、知っている限り。 body{ overflow-x:hidden; } (overflow-xのxの部分はいらないのでは?) overflowプロパティは、ブロックレベル要素(と置き換え要素)に指定できるものです。 bodyはおそらく、ブロックレベル要素ではないのではないかと。 解決策としては、GX71さんが答えておられるように、body以下をdiv要素などで囲ってしまい、そこをoverflow:hiddenと指定するなどでしょうか。 駄文、失礼致しました。