0

HTML ページでは、Mozilla Firefox14、IE8、Safari5.1.1、Chrome19 のブラウザをサポートしています。これらすべてのブラウザーをサポートするには、ページ上の要素の適切な配置を維持するために css ハックを使用する必要があります。

以下はcssです:

Mozilla Firefox および IE8 の場合:

.dis_stats
{
position:absolute;
margin-top:-30px;
margin-left:-190px;
background:#E0E0E0;
width:141px;
height:80px;
_position:relative;
_margin-top:-460px;
_margin-left:115px;
}

Safari と Chrome の場合:

@media screen and (-webkit-min-device-pixel-ratio:0) {
.dis_stats
{
position:absolute;
background:#E0E0E0;
margin-top:-30px;
margin-left:731px;
width:141;
height:80;
}
}

今、Mozilla で何が起こっているのか、それは完全に実行されています。しかし、IE8 では、Safari と Chrome に定義されたプロパティが適用されます。Safari と Chrome のプロパティのいずれかを削除すると、意図したプロパティ (IE8 と Mozilla に定義されている) から同じものが選択されます。

なぜこれが起こっているのか、私には手がかりがありません。誰でもここで何が間違っているのか教えてください。

4

1 に答える 1

0

標準に準拠し、ハックを必要としないバージョンを試してみることをお勧めします。ただし、ハックする必要がある場合は、問題を修正する別のスタイルシートを使用して、IE 8 専用の条件付きコメントを検討できます。

<!--[if lt IE 8]>
<style type="text/css" src="path/to/ie-only-style.css">
<![endif]-->

これは IE の何が問題なのかを実際に説明するものではありませんが、あまり時間をかけずに (保守性を犠牲にして) IE 固有の問題を解決することができます。

于 2014-01-15T01:57:39.953 に答える