-1

私が作成している Web ページには、TABLE が含まれています。TABLE の border-collapse プロパティは、インポートしたサードパーティの CSS ファイルによって「折りたたみ」に設定されています。

IE7 でページを開くと、テーブルが正しく表示されないことに気付きました (セルの境界線が白い線として表示されます)。

IE の開発者ツールを使用して、開発者ツールの UI の横にあるチェックボックスを使用して、含める CSS の「border-collapse:collapse」属性を有効/無効にできます。

ボックスのチェックを外すと、TABLE は再び正しく表示されます (境界線は表示されません)。そこで、テーブル要素にインライン スタイルを設定し、プロパティ値を「separate」に設定すると、CSS ファイルの値が上書きされ、テーブルが正しく表示されると考えました。

ただし、インライン スタイルを TABLE に追加しても、外観には影響しません。開発者ツールで、CSS の 'border-collapse:collapse' 属性が '取り消し線' スタイルになっていることがわかりました。その横にあるチェックボックスをオフ/オンにすると、セルの境界線の表示が切り替わります。

私の質問は次のとおりです: inline-style 値は、この属性の CSS インポート値をオーバーライドするべきではありませんか? 開発者ツールで CSS の属性が取り消し線で表示されるのに、明らかに無効になっていないのはなぜですか? CSS 値がこのテーブルの border-collapse に適用されないようにする他の方法はありますか?

ありがとう、

注意: 「separate」の後に「!important」を追加してみました

4

1 に答える 1

0

はい、インライン スタイル仕様は、インポートされたスタイルシートからのスタイルよりもオーバーライドされます (具体性が高くなります)。しかし、それは JS を適用したスタイルによって上書きされる可能性があります。

于 2012-11-14T17:25:01.450 に答える