CSS-オーバーフロー:スクロール; -常に垂直スクロールバーを表示しますか?


224

だから現在私は持っています:

#div {
  position: relative;
  height: 510px;
  overflow-y: scroll;
}

ただし、一部のユーザーにとって、そこにさらに多くのコンテンツがあることは明らかだとは思いません。彼らは私のdivが実際により多くのコンテンツを含んでいることを知らずにページを下にスクロールすることができました。私は高さを510pxにして一部のテキストを切り取り、一部のページではより多くのコンテンツがあるように見えますが、すべてのページで機能するわけではありません。

私はMacを使用しています。ChromeとSafariでは、垂直スクロールバーは、マウスがDivの上にあり、アクティブにスクロールしたときにのみ表示されます。常に表示させる方法はありますか?


4
ええとjsfiddleでこの正確な動作を再現できますか?指定したCSSにより、スクロールバーが常に表示されるようになります。
sg3s 2011

1
ええ、他のCSSの癖が原因であるように思われます。これにより、常にスクロールバーが表示されます。これをラップするdivのスタイルが適切であることを確認してください。
Shawn Steward

私はライオンを走らせています!多分それだけですか?仮想マシンを開いて、Windows側の状況を確認します...
Jambo

1
くそー、私の悪い!これはLionの機能です。買う前に買ったものをよく読んだほうがいい…みんなありがとう!
ジャンボ

回答:


386

私自身、この問題に遭遇しました。OSx Lionは、使用されていない間はスクロールバーを非表示にし、より「滑らか」に見せますが、同時に、対処した問題が発生します。divにスクロール機能があるかどうかが分からない場合があります。

修正:あなたのCSSにインクルード-

::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 7px;
}

::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: rgba(0, 0, 0, .5);
  box-shadow: 0 0 1px rgba(255, 255, 255, .5);
}

必要に応じて外観をカスタマイズします。ソース


6
これは、Safariを搭載したiPadでも動作しますか?iOS 6.1.3を実行しているiPad 2を使用していますが、機能しません。
crmpicco 2013

6
これを特定のクラスにのみ適用する方法はありますか?
futbolpal 2014

2
コンテナー(私の場合は<ul>)に 'overflow:auto'を設定した後にのみ私のために働きました。ありがとう!
Rob Campion 2014年

8
@futbolpalはい、これはクラスで動作するようです。:: .classnameを試す- WebKitの-スクロールバー
チェイス

4
これを水平に動作させるにはどうすればよいですか?バーが垂直スクロールで表示されるが水平スクロールでは表示されない
BritishSam 2017年

14

iPad Safariではwebkit-overflow-scrolling: touch;、CSSのどこかにある場合、NoviceCodingのソリューションは機能しません。ソリューションは、いずれかの出現をすべて削除され-webkit-overflow-scrolling: touch;たり入れ-webkit-overflow-scrolling: auto;NoviceCodingの溶液で。


3
私たちのcss-webkit-overflow-scrolling:touchとスクロールバーに両方を含めることは可能ですか?
ジュリー

1

これは私のテストからiOS 7.1.x上のSafari上のiPadで動作しますが、iOS 6についてはわかりません。ただし、Firefoxでは機能しません。jScrollPaneと呼ばれる、クロスブラウザに準拠することを目的としたjQueryプラグインがあります。

また、ここにStack Overflowに重複する投稿があり、その他の詳細があります。


5
この質問は、iOS6が存在する前の2年前に行われたことに注意してください。
OGHaza 2013年

webkitはサファリクロムのみです。Firefox固有のエンジンをターゲットにする必要があります
TigerBear 2017年

-4

これにより、アクセスするためにスクロールする必要のあるコンテンツがウィンドウ内にある場合、スクロールバーが常に表示されます。これは、Mac上のすべてのウィンドウとすべてのアプリに適用されます。

Preferencesアップルメニューから[システム環境設定]を起動します[全般]設定パネルをクリックします[スクロールバーを表示する]を探し、[常に]の横にあるラジオボックスを選択します終了したらシステム環境設定を閉じます


18
これは一種の質問には答えますが、サーバー側を修正するのではなく、クライアント側の修正です。つまり、ユーザーがしなければならないのはWebページです。stackoverflowはプログラミングサイトなので、ユーザーは通常、ユーザーがブラウザ設定を変更する方法ではなく、コードソリューションを見つけるためにここに来ます。
Eric Leschinski 2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.