次の少ない mixin を定義しています。
.TopDownActiveGradient(@s1, @s2){
background: -moz-linear-gradient(top, @s1 0%, @s2 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,@s1), color-stop(100%,@s2)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, @s1 0%, @s2 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, @s1 0%, @s2 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, @s1 0%, @s2 100%); /* IE10+ */
background: linear-gradient(to bottom, @s1 0%, @s2 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@{s1}', endColorstr='@{s2}'); /* IE6-8 */}
そして、それは次のように使用されます:
.TopDownActiveGradient(#f7f7f7, #fffffe);
これで、入力した色を簡略版 (#dadada など) に縮小できない場合に正常に機能します。つまり、#ffffff を #ffff に変換できる色として使用すると、Ie6 のフィルターとして機能しません。 -8 はフルカラーの 16 進値を想定しています。
この問題は、縮小オプションがオンになっている場合にのみ発生します。縮小しないことを選択した場合、#ffffff は「白」に変わり、正常に機能します。
私の質問は、ミックスインでカラー 16 進コードの縮小を停止するにはどうすればよいですか? または、この制限を回避する方法はありますか?
私は多くのことを試しましたが、どれもうまくいきませんでした。