2

次の Sass ルールがあります。

$multiplier: 1/3*100;
.ratio_1x0-5{
    padding-bottom: 0.5%*$multiplier;
}

次の css を出力します。

.ratio_1x0-5{
    padding-bottom: 16.6666666667%
}

代わりに、このルールを次のようにする必要があります (10 進数の精度は重要ではありません。最後の値が 7 ではなく 6 であることだけです)。これは、サブピクセル レンダリングの問題を解決するためです。

.ratio_1x0-5{
    padding-bottom: 16.6666%
}

sass 'floor' 関数を使用すると、全体が '16%' に切り捨てられます。Sassで小数点以下の桁数を切り捨てる方法はありますか? これを行うために mixin を使用するのはどうですか? libsass (sass 3.2) を使用しています。

「精度」の調整が機能しません - 最後の値はまだ「7」です。精度だけを変更すると、小数点以下の桁数が切り捨てられるだけです。必要なように、最後の小数点以下を切り捨てません。

コードペン: http://codepen.io/calumbrodie/pen/aOzVga

編集:これを重複としてマークした人は誰でも-これは別の質問です。他の質問は「精度」に関するものですが、これが「精度」に関するものではない理由を明示的に説明しています。私は本当にそれを明確にすることはできません。

4

2 に答える 2