複数の数値を受け入れ、レム測定単位とピクセルフォールバックを使用してcss値/プロパティのペアを吐き出すマージン用のLESSミックスインを作成しました。
これが私が助けを必要としているものです:
- ミックスインが「auto」や「inherit」などの有効な文字列ベースのプロパティを受け入れることができるようにしたい
- 必要な引数の量だけを宣言できるようにしたいと思います。例えば。マージン左だけが必要な場合は、のようなものを書くだけで済み
.margin(nope,nope,nope,1);
ます。
これが私がこれまでに持っているものです:
.margin(@sizeValueTop: auto, @sizeValueRight: 0, @sizeValueBottom: 0, @sizeValueLeft: 0) {
@pxValueTop: (@sizeValueTop * 16);
@remValueTop: (@sizeValueTop);
@pxValueRight: (@sizeValueRight * 16);
@remValueRight: (@sizeValueRight);
@pxValueBottom: (@sizeValueBottom * 16);
@remValueBottom: (@sizeValueBottom);
@pxValueLeft: (@sizeValueLeft * 16);
@remValueLeft: (@sizeValueLeft);
margin-top: ~"@{pxValueTop}px";
margin-top: ~"@{remValueTop}rem";
margin-right: ~"@{pxValueRight}px";
margin-right: ~"@{remValueRight}rem";
margin-bottom: ~"@{pxValueBottom}px";
margin-bottom: ~"@{remValueBottom}rem";
margin-left: ~"@{pxValueLeft}px";
margin-left: ~"@{remValueLeft}rem";
}
body{
.margin(1,1,1,1);
}
どんな助けでも素晴らしいでしょう。