すべての境界線が1px幅のソリッドに設定されたテーブルがあります。上、左、下の境界線を黒にし、右の境界線を白にします。だから、私はこのcssコードを使用しました
border-right-color: white;
border-left-color: black;
border-top-color: black;
border-bottom-color: black;
border: solid 1px;
問題はIE9で発生します。この場合、右上隅のピクセルは白になりますが、右下隅は黒になります。
IE9がスタイルを再編成する方法に問題があるのではないかと思います。これは、開発者ツールコンソールでテーブルのcssを見ると、次のように順序付けられているためです。
border-top-color: black;
border-right-color: white;
border-bottom-color: black;
border-left-color: black;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-style: solid;
border-right-style: solid;
border-bottom-style: solid;
border-left-style: solid;
これにより、おそらく、定義された色の順序によって、上部の境界線が黒になり、次に右側の境界線が白になり(右上隅を上書き)、下部の境界線が黒になります(下部を上書きする)と思います。右隅)そして最後に左の境界線は左に色付けされています。
問題は、白い背景では、上下の境界線が同じ長さ(1ピクセル)に見えないことです。それほど多くはないかもしれませんが、ページの他の行に合わせるために、これらの2つの境界線が必要です。
だから、どうすればこれを修正できますか?それは本当に境界線が着色されている順序についてですか、もしそうなら、どうすればそれを変更できますか?