• ベストアンサー

フレーム(左)のスクロールバーを非表示にすると上下に動かなくなる問題。

frameborder="no" scrolling="no" と記述すると フレーム(左)のスクロールバーを非表示にすることができますが ページを上下に動かすことができなくなってしまいます。 スクロールバーを非表示にしつつページを上下に動かすには どうすればよいのでしょうか?ご回答よろしくお願いします。

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

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

  • ベストアンサー
noname#25358
noname#25358
回答No.2

 スタイルシートを使うと、スクロールバーの色を全て背景色と同等にして見えなくしてしまうことは可能です。  IE限定ですが。  参考URLのページの少し下に、"scrollbar...." ってのがズラーっと書いてあるので、それに全て同じ値をセットすればいいんです。

参考URL:
http://tohoho.wakusei.ne.jp/css/reference.htm#ui
nana_watuki
質問者

お礼

スタイルシートでスクロールバーの色を変更できることは知っていましたが スクロールバーの色を全て背景色と同等にして見えなくする方法ははじめて知りました。 早速やってみたらスクロールバーを非表示にしたままページを上下させることができました。 ご回答ありがとうございました。

その他の回答 (1)

  • shige_70
  • ベストアンサー率17% (168/946)
回答No.1

基本的にはブラウザによります。 ただ、スクロールさせるためにスクロールバーがあるのですから、消したらスクロールできないのはある意味当たり前です。キーボードを使っても動かせなくなってしまうのはどうかとも思いますが。。。 とはいえ、scrolling="no" は『スクロールバーを消す』というより『スクロール禁止』という意味あいが強いと思われます。そう考えると納得がいきます。 本来的には、画面に表示しきれないからスクロールするのであって、画面に入り切らずスクロールも禁止というのは良くないとは思います。 つまり、デザインにこだわるあまり無闇にスクロールバーを消すのはユーザに対しては不親切と言うことです。フレーム境界の固定についても同様です。 ちなみに、裏技ですが、ブラウザによっては当該フレーム上でマウスの左ボタンを押したままマウスカーソルを上下に動かす(要はドラッグしてテキスト選択をする)とスクロールします。

nana_watuki
質問者

お礼

確かにスクロールバーを消すことはアクセシビリティの低下につながるので あまりやらないほうが良いかもしれませんね。 ご回答ありがとうございました。

関連するQ&A

  • 下に表示されるスクロールバーの消し方を教えてください。

    下記のようにtitle(上)、menu(右)、main(左)と、3つのフレームを分けて表示していますが、 <frameset rows="60,*" border="0" frameborder="0" framespancing="0"> <frame src="title.html" name="head" scrolling="no"> <frameset cols="130,*" border="0" frameborder="0" framespancing="0"> <frame src="menu.html" name="menu" scrolling="auto"> <frame src="cont.html" name="main" scrolling="auto"> </frameset> </frameset> *で表示しても、main(右)のフレームの下にスクロールバーが出てしまいます。右端の上下のスクロールはいかしたまま、下のスクロールバーを消すには、どのようにすればよいのでしょうか? 分からなくて困っています。もし分かる方是非教えてください。 現状はこんな感じになってしまっています。http://www.twinklecloset.com/index.html

    • ベストアンサー
    • HTML
  • フレーム分割した全体をスクロールバーで動かせないでしょうか?

    フレーム分割したホームページをスクロールバーで上下したいのですが、書き方が分からなくて困っています。お分かりになる方がいらっしゃいましたら、教えて下さい。 尚、当方htmlでようやく簡単なページが作れるレベルです。宜しくお願い申し上げます。 尚、フレームの割り方が違う時はそちらもお教え下さいませ。 <HTML><HEAD> <META Http-Equiv="Content-Type" Content="text/html;charset=Shift_JIS"> <TITLE>フレーム分割</TITLE></HEAD> <FRAMESET Rows="195,*,50" Frameborder="1"> <Frameset cols="10%,80%,10%" Frameborder="1"> <FRAME Src="./frame1.html" name="f1" Scrolling="no"> <FRAME Src="./frame2.html" name="f2" Scrolling="no"> <FRAME Src="./frame1.html" name="f3" Scrolling="no"> </Frameset> <Frameset cols="10%,20%,60%,10%" Frameborder="1"> <FRAME Src="./frame1.html" name="f4"> <FRAME Src="./f001.html" name="f5" scrolling="no"> <FRAME Src="./f002.html" name="f6" scrolling="no"> <FRAME Src="./frame1.html" name="f7"> </Frameset> <FRAME Src="./end.html" name="f8" scrolling="no"> <NOFRAMES>恐れ入りますがフレーム対応ブラウザでご覧下さい</NOFRAMES> </FRAMESET> </HTML>

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

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

  • スクロールバーを無くしたい

    フレームを使うとき、スクロールバーの有無を <FRAME Src="***.html" Name="menu" Scrolling="no"> のようなタグで決めるのは調べてわかったのですが、 フレームを使用せず、普通の一つのhtml文書でスクロールバーを非表示にする方法はありますか?

    • ベストアンサー
    • HTML
  • 横スクロールバーについて

    Dreamweavwe8にて作業しています。 製作した画面はフレーム構造のメインコンテンツを表示する部分なのですが、フルCSSにて製作、確認画面でその画面だけを表示すると縦スクロールだけが表示され、横スクロールは通常時は表示しませんが、 INDEXを立ち上げ、フレームの一部としてみた時、横スクロールが表示されます。 それは、縦スクロールが消えるサイズまで広げると消えるのですが、縦スクロールがある間は表示されます。 ページの設定でスクロールは自動にしてあります。 フレームの設定は、 <frameset cols="166,*" frameborder="NO" border="0" framespacing="0"> <frame name="leftFrame" noresize scrolling="NO" src="menu.html"> <frameset rows="135,*" cols="*" frameborder="NO" border="0" framespacing="0"> <frame name="topFrame" noresize scrolling="NO" src="header.html" > <frame name="mainFrame" src="top.html"> </frameset> </frameset> としてあります。 ここで何か設定が必要なのでしょうか? 私が困っているのはtop.htmlのところです。 解りにくくてすいませんが、よろしくお願いします。

  • フレームの仕様について

    例えば <frameset rows="○○px,100%"> <frame src="○○" scrolling="no" noresize frameborder="no" name="head"> <frame src="○○" noresize frameborder="no" name="contents"> </frame>でフレームを上下で分割した時に、上のフレームでは上下左右のスクロールバーが出ない設定にしてあるのですが、下のフレームではスクロールバーが表示される様に設定してあります。この時に、下のフレームで上下のスクロールバーだけを表示させたいと思っているので左右のスクロールバーを表示させたくありません。どうすればよろしいのでしょうか。

    • ベストアンサー
    • HTML
  • DMMX2004のフレームのスクロールバーがっ!

    はじめて投稿させていただきます。 DMMX2004でフレームのページを作っているのですが、左側のメニューから右側のメインページをターゲットにして飛ぶと、どうしてもウインドウ下辺のスクロールバーが出てしまうのです。 改行のみの単純なページだとしても同じで、サイトの外観を著しく損なうので、どなたかお教えいただけないでしょうか。 ちなみにスクロールバーの設定は自動(auto)になってす(特にいらないときにも出てくる) 以下がフレームのソースです。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>flame</title> </head> <frameset cols="120,*" frameborder="NO" border="0" framespacing="0"> <frame src="menu.html" name="menu" scrolling="auto" noresize> <frame src="main.html" name="main" scrolling="auto"> </frameset> <noframes><body> </body></noframes> </html> それではよろしく御願いします。

  • ブラウザによってフレームの表示が異なるのですが..

    はじめまして。 現在下記のような形のHPを制作しているのですが、フレームが難しくてなかなか進めません。 ブラウザやそれぞれの環境によって見え方が違ってしまいます。 私の環境では真ん中にぎゅっと詰まってスクロールが出てしまうような小さな見え方になってしまっています。 どの環境で見ても統一させるにはどのようにしたら良いのでしょうか。 ------------------------------ 上の固定バー ------------------------------ メニュー|内容     |     |     |     | ------------------------------ 下の固定バー ------------------------------ ソースは以下のように組みました。 <frameset rows="10%,*" cols="*" framespacing="0" frameborder="no" border="0"> <frame src="Margin/Index.html" scrolling="No" noresize title="topFrame"> <frameset rows="*,230" cols="*" framespacing="0" frameborder="no" border="0"> <frameset cols="215,*" frameborder="no" border="0" framespacing="0"> <frame src="Margin/Index.html" scrolling="No" noresize title="menuBarFrame"> <frameset cols="*,25%" frameborder="no" border="0" framespacing="0"> <frameset rows="64,*" frameborder="no" border="0" framespacing="0"> <frame src="topbar/topbar.html" scrolling="No" noresize title="topBarFrame"> <frameset rows="*,41" cols="*" framespacing="0" frameborder="no" border="0"> <frameset rows="*" cols="178,*" framespacing="0" frameborder="no" border="0"> <frame src="menu/menu.html" scrolling="No" noresize title="leftFrame1"> <frame src="top/top.html" name="main" title="topFrame"></frameset> <frame src="bottombar/bottomBar.html" scrolling="No" noresize title="bottomFrame1"> </frameset> </frameset> <frame src="Margin/Index.html" scrolling="No" noresize title="rightFrame"> </frameset> </frameset> <frame src="Margin/Index.html" scrolling="No" noresize title="MenuBarFrame"> </frameset> </frameset> <noframes> ------------- また、現在フレームは推奨されないのも知っているので、 オススメの組み方がありましたら教えていただけませんでしょうか。 HTML等に関してまったくの初心者ですので、判り易く教えていただけたら大変有り難く思います。どうぞよろしくお願いします。

    • ベストアンサー
    • HTML
  • 縦スクロールバーが表示されないようにする

    iframeで表示されるサイトの内容によってHTMLの表示サイズを変更しないのですが、 javascriptをどのように記述すればいいのでしょうか? つまり、縦スクロールバーが表示されないようにする。 普通にscrolling = "no"と記述すると、 サイトの下側は表示されなくなってしまうので。

  • スクロールバーが表示されない・・・

    最近初めてHPビルダー8でサイトを作成しています。 なんとか順調に行ってネット上に公開までいったのですが、トップページでフレームと言うのでしょうか?? 左のフレーム側の方はスクロールバーが表示されるのですが、右側のページの方はスクロールバーが表示されないのです。 ビルダーのプレビューで見る時にはあるのですか、ネット上で見るとなくなってるのです。 ビルダーにあるフレーム属性の変更のスクロールバーの所を「あり」にしたり、ページの下の方に文字を置いたりしたのですが、ネット上で見るとどうしてもスクロールバーが出てくれません。 あと、パソコンはWindousを使っています。 説明不足かもしれないのですが…あまりパソコンに詳しくないのでどうぞ宜しくお願い致します!!

専門家に質問してみよう