10

translateXまたはを使用translateYすると、Firefoxのページのレイアウトが影響を受けるように見えます。CSS仕様では、これらのプロパティがレイアウトに影響を与えてはならないと規定されていても、永続的なスクロールバーが生成されます。

例として、http: //daneden.me/animateにアクセスし、「fadeOutRightBig」アニメーションをクリックします。スクロールバーは(CSSアニメーションをサポートする)すべてのブラウザーで生成されますが、Firefoxでは存続します。これは、Mozillaまたは他のブラウザによる間違いによるものですか?既知の解決策はありますか?

4

3 に答える 3

11

この問題を解決する別の方法は、固定配置に切り替えることです。

#EvilElement {
    position: fixed;
}

もちろん、これには他の副作用があるかもしれませんが、ページ全体の水平スクロールバーを無効にすることはありません。

于 2012-03-19T00:42:39.690 に答える
9

私にはバグのように見えます: https://bugzilla.mozilla.org/show_bug.cgi?id=456497しかし、注目されていないのは奇妙で、私にはかなり深刻なようです。

解決策は、それを回避できる場合、html 要素の水平オーバーフローを非表示にすることです。

html {
  overflow-x: hidden;
}

または、水平スクロールが必要な場合は、親要素に適用します。

于 2011-10-14T21:23:57.040 に答える
5

Bugzillaの問題に関するコメントは良い点を示しています。これは と同じ動作position: relativeです。元の要素の場所は保持されますが、変換された要素が表示可能なコンテナー (ビューポートまたはスクロール可能な要素) の外に移動すると、スクロールバーが追加されます。

これは仕様に準拠しており、おそらく「修正されない」でしょう。

于 2014-01-02T20:22:59.433 に答える