• 締切済み

スクロールバーを消したいです

ファイヤーフォックス1.0・ネットスケープ7.1では正常に見られるのですが、IE6.0・オペラ8.0ではスクロールバーが出てしまいます。状況としては・・・ ・iframe内で画像を直接指定して、フレーム丁度の大きさの画像を出している ・iframeに上下、左右のスクロールバーが出てしまってお互いの分だけ(厳密には違うのかも知れませんが)のスクロールが生じる 何が原因か分かる方は、対処法を教えていただきたいです。 強制的に消す方法以外でお願いします。 もう一つ、四つのブラウザのうちオペラだけの話なのですが・・・スクロールが出てしまう箇所があります。原因は【float】を使って【div】を横に並べてることだと思います。 ・ページ全体をスクロールさせるのではなく、【div1】の中でスクロールさせている。 ・【div1】の中に【float】を使って【div21】【div22】を横に並べている。 すると、何故かページ自体に空白のスクロールが出てしまうのです。【div1】の中に並べる数があればあるほど長くなります。消すとページのスクロールも消えるので【float】が原因なのは分かるのですが・・・これはどうにもならない問題ですか?これも「見た目に強制的に消す」以外の方法があれば知りたいです。

  • EV2
  • お礼率100% (12/12)
  • HTML
  • 回答数4
  • ありがとう数4

みんなの回答

  • EUR
  • ベストアンサー率61% (29/47)
回答No.4

すみません >強制的に消す方法以外でお願いします。 を見逃していました。 IEで必要のないスクロールバーが表示するというのは何回か聞いたことがあります。 やはりNo3さんがおっしゃるように画像を一回り小さくするや、 iframeの中に表示されるHTMLの幅や高さを取得して、iframeのサイズより大きければ強制的にスクロールバーを出し、小さければ強制的にスクロールバーを消すなど、完全にスクロールバーを制御してしまうことを考えないといけないかもしれません。

EV2
質問者

お礼

画像の周りに白と黒の枠線を等間隔でつけているので・・・ 画像を小さくするのは格好が悪いのです。 ありがとうございました。

回答No.3

自分で全て制御するか諦めるか。 閲覧者の環境(ブラウザの機能)の事なのですから、 私としては色でも付けて目立たない様にする事で回避する事をお勧めします。 あと画像を一回り小さく(フレームを一回り大きく)しておくべきかと。 スクロールバーの分で入りきらないなら、出てきても消える様に余裕を持たせれば・・・。 divのスクロールは、本当に適切に制御しdivの中でスクロールしているのですか? 単に中に見えているだけで正しくスクロールしていなければ 見えていない場所に存在する物も影響をあたえスクロールバーが出るのも自然ですが・・・。 (仕掛けの詳細を見ていないので何とも言えませんが、 少なくとも一部のブラウザ,バージョンでは位置情報を期待する描画をしてくれませんので、 中途半端にブラウザの機能を利用するのは回避するべきかと・・・)

EV2
質問者

お礼

ご回答ありがとうございます。 スクロールは画像に限らず起きます。 何かそうなる条件みたいなのがあると思うのですが (起きない時もあるにはあるので) それがサッパリ分かりません。 適切なソースを書いているつもりなので これも分かりません・・・ 原因を突き止めるのは難しそうですね。 なんとかやってみます。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

画像のマージンとか iframeに表示されるがわの <body>のマージンなんだのを0にしてもだめですか?

EV2
質問者

お礼

試しましたが駄目でした。 ご回答ありがとうございます。

  • EUR
  • ベストアンサー率61% (29/47)
回答No.1

iframeのscrollingプロパティを"no"にするのはいかがでしょうか? <iframe name="test" width="100" height="100" scrolling="no">

EV2
質問者

お礼

ご回答ありがとうございます。 しかしそれでは長い文章などを入れた時にはスクロール出来なくなるので・・・知りたい解決策とは違うんですよ。

関連するQ&A

  • iflameのスクロールバーについて

    ページ内に、iflameでページを表示しようとしています。 縦に長いページなので、縦にだけスクロールバーを出したいのですが… <iframe src="http://...." width="600" height="400" scrolling="yes"></iframe> こんな感じに設定しています。 ウィンドウズIEではキレイに見えています。 ですが、マッキントッシュIEで見ると、スクロールバーが表示されません。 <iframe src="http://...." width="600" height="400" scrolling="auto"></iframe> にすると、マッキントッシュIEでもスクロールバーがきれいに表示されるのですが、 ウィンドウズIEで、必要のない下の部分(横部分)のスクロールバーまで出てしまいます。 この横スクロールバー、たとえ中味を短くしても、表示されるので…すごーく嫌なのです…。 マッキントッシュと、ウィンドウズ両方で、たて部分だけスクロールバーが出るようにする方法はあるのでしょうか?

    • ベストアンサー
    • HTML
  • iframeの横スクロール

    iframeを使ってほかのページを表示させているのですが、 どうしても横スクロールバーが出てしまうのでcssのbody要素に 「overflow-x: hidden;」と入れました。 確かにiframeの横スクロールバーは消えましたが、ページの横スクロールも消えてしまいました。 div idでiframeを囲ってcssでその場所だけに「overflow-x: hidden;」を入れると今度は横スクロールバーが消えません。。 色々調べてみたのですが同じような人がいないようで; 詳しい方教えていただけないでしょうか。 (説明がへたくそですみませんm(_ _)m)

  • iframeのスクロールバー

    iframeの中に、 縦のスクロールバーは出てもいいのですが 横のスクロールバーは出したくないので、表示するファイルはテーブルで幅を固定してるのですが、どうしても横にスクロールバーが出てしまいます。 でないものもあります・・・。 何がいけなくて横のスクロールバーが出てしまうのでしょうか?? よろしくお願いいたします。 ↓こちらです。 http://sound.jp/goldcherry/hp/prof.html wearという欄にどうしても横スクロールバーが出てしまって困ってます。

  • スクロールバーについて

    iframeこちらのタグを使わずにテーブルの中にスクロールバーを表示させる方法を教えてください。お願いいたします。

  • iframeのスクロールバーをウインドウと一体化

    http://xappy.jp/ このサイトは外部サイトを iframe で開いているようです(ユーザー登録が必要なページで申し訳ないです)。 その iframe で開いているページのスクロールバーが、 普通のウインドウのスクロールバーと変わらない位置にあります。 自分の知識では、http://zumirin.cool.ne.jp/kowaza/iframe.htm のように iframe 内にスクロールバーを表示させる方法しか分かりません。 どうすれば同じように、iframe内のスクロールバーとウインドウのスクロールバーを一体化できるのでしょうか?

    • ベストアンサー
    • HTML
  • インラインフレームのスクロールバーについて

    インラインフレームのスクロールバーが現れないようにしたいのです。それも、縦方向は残して、横方向のスクロールバーが出ないようにしたいのです。 MacのIEで確認すると(当方はMacintoshでホームページを作成しています)縦方向のみスクロールバーが現れ、横方向は現れません。がWindowsで確認すると縦横ともに現れるのです。 タグではautoとyesとnoしか制御する方法はないのでしょうか? Javascriptなどでもかまいません。 どなたかご存じでしたら教えてください。お願いします(泣) ちなみにテーブルのセルの中に作っているのですが、タグはこんな感じです↓ <td width="104"> <iframe src="info.html" name="info" width="100%" height="92" frameborder="0"> <p>このページはインラインフレーム対応のブラウザでご覧ください。</p> </iframe> </td>

    • ベストアンサー
    • HTML
  • html、スクロールバーを表示させない(横だけ)

    HTMLでフレームのスクロールバーを表示させないには <frame>、<iframe>タグの属性、scrolling="no"とすればよいのですが それでは縦のスクロールバーも横のスクロールバーも消えてしまいます。 自分は横のスクロールバーのみ消して縦のスクロールバーのみ残したいのですがどうすればいいでしょう? 補足:上下にのみ動かせるページを作りたい。ということ。 わかるかたどうかお願いいたします。 HTMLでムリでしたらJavaScritpなどでもかまいません(が、解説、もしくは解説ページを教えていただかないと自分はJavaScriptが打てませんので・・・よろしくお願い致します。)

  • スクロールバー

    インラインフレームの縦スクロールバーは表示して 横スクロールバーは表示しないようにするには どうしたらよいでしょうか? フレームの枠を中に表示するHTMLのWIDHTより大きく 設定してるんですが、どうしても横スクロールが出て しまいます。 フレーム内に表示するページの幅って設定できるんですか? 詳しい方よろしくお願いします。

  • 高さを指定せずに子divにスクロールバー

    お世話になっております。 内包されたdivにスクロールバーをつけたいのですが、高さを指定したくない場合はどうすれば良いでしょうか? 何がしたいのかと言えば 高さを規定した親div内に、問題の子divを入れます。 この子divにoverfllow:auto;を効かせて、中のテキストがはみ出した場合にスクロールバーを表示させたいです。 問題はその子divの上部にもほかの要素が加わり、その内容量が動的に変わるので、スクロールバーを出したいdivの高さを指定することができないのです。 高さを指定しなければ、overfllowでスクロールバーを出せません…。 cssで解決する方法は御座いますでしょうか? お詳しい方、何卒ご教授下さい。 だいぶ簡略化したものですが、下記コードがイメージに近いです。 汚いコードですが・・・ <style type="text/css"> <!-- *{margin:0;padding:0;} --> </style> <body> <div style="width:500px;height:150px;border:1px solid #555;margin:10px;"> <p style="width:50px;height:150px;float:left;background:#ccc;">ナビ。float:leftしてます。</p> <div style="width:450px;float:left;"> <p>ここに文章や画像・リストがきます。高さはページごとに変わります。</p> <div style="border:1px solid #aaf;overfllow:scroll;">子divです。わかりやすいよう、overfllowはscrollにしてあります。<br /> (「親divの高さ」-「他の要素の高さ」)<「本文の量」のとき、スクロールバーを表示させたいです。<br /> 高さを規定すべきですが、↑要素の内容量がページごとに変わるため、難しいです。<br /> cssのみで解決することは可能でしょうか?無理であれば、javascript等でも構いません。<br /> 何卒宜しくお願い致します。<br /> 本文本文本文<br />本文本文本文<br />本文本文本文<br />本文本文本文<br /> </div> </div> </div> </body>

    • 締切済み
    • CSS
  • スクロールバーを横に表示させたい

    IFRAME上でスクロールバーを縦ではなく横で表示させるにはどうしたらいいのでしょうか?

専門家に質問してみよう