「トイレのうず」本館の各コンテンツ内で縦スクロールバーが 2 本出ていた不具合をやっと修正。
IE6 以下では position: fixed;
が効かないので、 div タグでページ全体をくくってそこにスクロールバーを表示させてたんだけれど、ウインドウの方のスクロールバーが残ってしまっていた。特にウインドウを小さくしたときに 2 重にスクロールバーが出るのはいただけない、と思いつつ何年も放置していた。
原因は IE が縦スクロールなしでもデフォルトでそれを表示する設定になっているから。要はそれを消せばいいわけだ。
IE で固定座標を指定する方法
↑このページを参考に
html {
overflow: hidden;
}
としてみるけれど、なぜかスクロールバーが消えない。試行錯誤の結果、
body {
overflow: hidden;
}
としてやっとスクロールバーを 1 本にすることができた。
参考にしたページのサンプルのスクロールバーはちゃんと 1 本だったから
html {
overflow: hidden;
}
が効かないわけないと思うんだけれど、なんでダメだったんだろう。
ちなみにわたしは IE にのみ対応させるためアンダーバーハックを使いましたが、 IE7 でちゃんと表示されているのだろうか? 環境がないから確かめようがない。