1

すべてのブラウザーの css:

.bordering {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: #A3815B 0px 1px 3px;
    -moz-box-shadow: #A3815B 0px 1px 3px;
    box-shadow: #A3815B 0px 1px 3px;
}

IE の CSS:

.bordering {
    border: 1px solid #A3815B;
}

.borderingすべてのブラウザのCSSからクラスを削除すると、その境界線は正常に機能しますIE

やり方は、一度に他のものと一般的なものでbox-shadow動作します。FF,OperaborderIE

試した:

.bordering {
    -webkit-border-radius: none;
    -moz-border-radius: none;
    border-radius: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

役に立ちませんでした。

4

2 に答える 2

2

IE 用に別の CSS を作成し、次のようie.cssに HTML ページにリンクします。

<![if IE]>
<link rel="stylesheet" href="css/ie.css" type="text/css" media="screen" />
<![endif]>

CSS は、IE が検出された場合にのみ含まれます。

その後、.borderingCSS をstyle.css(すべてのブラウザーで) に配置border: xxxし、ie.css.

それはうまくいくはずです。何度も作りました。

于 2012-05-25T15:34:39.740 に答える
2

ieこのように、HTML タグに条件付きコメントを使用してクラスを配置します。

<!--[if IE]><html class="ie"><![endif]-->
<!--[if !IE]><!--><html><!--<![endif]-->

( http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/を読みたいかもしれません)

次に、IE のスタイルを次のように設定します。

.ie .bordering {
    /* your styles for IE */
}

ただし、IE の box-shadow と border-radius を抑制したい理由がわかりません。IE9 はそれらをサポートしており、IE8 以前では単純に影がなくなり、四角形になります。


ノート

大きな次元の on 要素を使用する場合は注意してbox-shadowください。についても同様ですborder-radius

于 2012-05-25T15:35:12.450 に答える