2013-09-26 190 views
11

試圖創建視頻響應網格。我沒有爲每個媒體查詢使用不同的%,而是希望使用基於100%寬度計算的標準SASS公式,但不知道SASS是否可以這樣做。以下公式中的40考慮了2 x 20px固定邊距(即,這將是3列網格)。SASS數學計算

理想公式:

ul.videos { 
    li { 
    width: ((100%/3) - 40); 
    } 
} 

任何方式CSS/SASS可以處理這個問題?如果可能的話,不希望使用JS。

回答

19

不幸的是,你不能從33%中減去40px。 SASS生成一個標準的CSS文件供瀏覽器解釋,在編譯時SASS不知道瀏覽器的尺寸。

然而,你應該使用calc()能夠通過使用CSS利潤率達到預期的效果,例如

ul.videos { 
    li { 
    width: (100%/3); 
    div { 
     margin: 0 20px; 
    } 
    } 
} 
+0

從谷歌搜索,這是我正在尋找的語法。 – jchook

+0

圓括號是我正在尋找。沒有需要calc() –