Firefoxで壊れたCSSメニュー(display:table-cell;)
-
03-07-2019 - |
質問
HTML:
<td align="center" width="100%">
<a class="Forum_ib_moderate" href="Default.aspx" title="Moderate"></a>
<a class="Forum_ib_admin" href="Default.aspx" title="Admin"></a>
...
CSS:
A.Forum_ib_moderate:link, A.Forum_ib_moderate:visited, A.Forum_ib_moderate:active, A.Forum_ib_moderate:hover
{
background-image: url(images/ib_moderate.png);
background-repeat: no-repeat;
background-position: center;
padding-left: 2px;
padding-right: 2px;
padding-top: 8px;
padding-bottom: 0px;
height: 35px;
width: 35px;
display:table-cell;
}
A.Forum_ib_admin:hover
{
background-image: url(images/ib_admin_hover.png);
}
IEではメニューは問題なく表示されますが、Firefoxでは垂直に表示されます。 &quot; display:table-cell;&quot;をオフにするとFirebugでスタイルを設定してから再びオンにすると、そのメニューノードが修正されます。
アイデアはありますか
p.s .: DNNフォーラム4.4.3の一部であるため、メニュー自体をいじりたくありません。 CSSを修正して、正しく表示されるようにします。
解決
IEは、 ignore display:table-cell
であるため、IEが動作することがわかると思います。 Display:table-cell
は実際には問題です。
私が推測しているのは、IEがそれらをインライン要素、つまり水平に戻すことです。
変更:
display: inline;
必要に応じてパディング(左右)を追加すると、必要なものが得られます。
代わりに、それらをフロートさせることもできます(左および/または右)。
Besdies、彼らはすでにテーブルのセルにいます。内部の表セルの表示が少し間違っています。
他のヒント
この問題にも遭遇しました。まだ解決策を探しています。この場合、表示を維持する必要があります:テーブルセルレイアウト。
Firefoxが時々、一見ランダムに見えるため、実際のテーブルのように振る舞うのではなく、テーブルセルオブジェクトがラップされます。更新により修正されるため、バグ修正が難しくなります。
FireFoxの単純なバグのようです。私は別の方法で問題に遭遇しました:Win XPのFF 3.5.9で更新した後、 互いに下に配置されたtable-cellを持つDIV。
ソリューションを見つけることができませんでした(セルを行にラップする、オーバーフローが非表示になるなど)が、FireFoxを3.6.3に更新し、そのバージョンのユーザーがほとんどいないことを期待しました。
これは、私が修正しようとしているFirefoxのリフローバグに似ています。テーブルはリフローを引き起こし、Firefoxがリフローをミスすることがあるため、テーブルはレンダリングに非常に悪いようです。
次のページが役立つことがわかりました: