特にselect要素のグラデーションを完全に削除またはオーバーライドする必要があります。フォームコンポーネントなしでBootstrapのカスタムコピーをダウンロードしました。select要素は必要な方法で表示されますが、他のすべては明らかになくなっており、selectグラデーションを削除するだけで済みます。ありがとう。
グラデーションは.btn-*
クラスにあります(ボタンのドロップダウンを使用していると仮定します)。
例(btn-primaryを使用):
.btn-primary {
color: #ffffff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
background-color: #006dcc;
*background-color: #0044cc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
background-image: linear-gradient(to bottom, #0088cc, #0044cc);
background-repeat: repeat-x;
border-color: #0044cc #0044cc #002a80;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}
グラデーションを削除するには、background-color;
以外のすべての背景プロパティ(下部のフィルターを含む)を削除するだけです。
.btn-primary {
color: #ffffff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
background-color: #006dcc;
border-color: #0044cc #0044cc #002a80;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}
また、単色の境界線を使用して仕上げることもできます。
.btn-primary {
color: #ffffff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
background-color: #006dcc;
border-color: #0044cc;
}
.btn-*:hover、:focus、:activeスタイルについても同じことを行う必要があります。
Herr_Hansenによるコメントは私のために働きます。
Safariの場合、CSSを使用して-webkit-appearance:none;
を<select>
に追加してみてください