2009-06-17 22 views
1

は、私は非常に簡単なテストケースを持っている:私はそれをレンダリングするときFirefoxがdivに水平スクロールバーを置くのはなぜですか?

<html> 
    <body> 
    <div style="border:2px solid black; overflow: auto;"> 
     x 
    </div> 
    </body> 
</html> 

が、私は水平スクロールバーを取得します!

私は、Linux用のFF 3.0.3を使用して、そしてそれは、ブラウザのバグかもしれないと思ったので、私はFF 3.5b4(最新のリリース候補)にアップグレードされていました。まだ起こります。

はこれが起こることになっていますか?バグレポートを提出する必要がありますか?誰かが回避策を知っていますか(編集:私はオーバーフローを使用し続けることができます:自動)?

+0

は、私は、Windows VistaのFF 3.0またはIE7での水平スクロールバーを得ることはありません。 –

答えて

5

オーバーフローにスクロールバーがあるべきではありません。内容は実際に含む要素のエッジを越えている場合を除き、オート。これはFirefoxのLinux版のバグです。 bug reportを参照してください。奇妙だ

5

あなたのオーバーフロースタイル。スクロールバーを削除するために隠しオーバーフローに変更します。

Josh

+1

Chris Coyierさんは少し前にCSSのオーバーフロープロパティについて素晴らしい投稿をしています:http://css-tricks.com/the-css-overflow-property/ – patricksweeney

+0

オーバーフローが問題を引き起こすのを助けていることは知っていますが、私は*オーバーフローする必要があります。水平スクロールバーはやむを得ない副作用であるはずですか? – mike

+0

あなたのオーバーフローの必要性とおそらく私は代替案を提案するのに役立つでしょう。 – Josh

1

私はバグレポートを提出します。それは私のバージョン(Windows用)ではそのように表示されません。

+2

ええ、CSSの仕様によれば、autoは必要なときだけスクロールバーを表示すべきです。 http://www.w3.org/TR/css3-box/#overflow1 –

+0

ここで話題に既存のバグレポートです:https://bugzilla.mozilla.org/show_bug.cgi?id=397367 –

+0

PP:あなたはそれを答えとして提出する必要があります - 私はそれを受け入れるでしょう! – mike

0

divにはwidth:100%があり、境界線を追加するとオーバーフローすることはありますか?

関連する問題