我所試圖做的是創造價值
- 循環通過地圖$斷點,
- 拉出最小值爲每個斷點,
- 計算基於每一個EM值,
- 然後使用這些對於這個代碼需要商品的全球地圖$ MS-範圍
可變的,看起來像這樣:
$ms-range:
1.2 20em,
1.333 30em,
1.618 40em,
1.8 50em,
2 60em;
我不能讓函數返回我想要的格式。也許地圖延伸?!我不知道。我需要一位SASS大師!
SASS:
$breakpoints: (s: (320, 479), sm: (480, 767), m: (768, 1023), l: (1024, 1439), xl: (1440, null));
@function returnThatMap() {
@each $name, $values in $breakpoints {
@for $i from 1 through length($name) {
$min: nth($values, 1);
// if the last one
@if ($i == length($name)) {
@return 'calc($i * 1.2) $min/16 * 1em'
}
// if not the last one
@else {
@return 'calc($i * 1.2) $min/16 * 1em',
}
}
}
}
$ms-range : returnThatMap() ;
// OUTPUT FORMAT NEEDED below!! (dummy numbers, but correct syntax - ie. number ' ' [number]em,number ' ' [number]em, number ' ' [number]em;)
// $ms-range:
// 1.2 20em,
// 1.333 30em,
// 1.618 40em,
// 1.8 50em,
// 2 60em;
SASSMEISTER LINK: http://www.sassmeister.com/gist/700f0721fd7940c84435cb1b5210f5d7
驚人的工作!謝謝你的幫助。代碼中的評論非常感謝。 –
沒問題!樂於幫助 :) –