我很好奇在使用calc()設置CSS變量的行爲。在CSS變量CSS calc()行爲
實施例:
#test {
--halfWidth: calc(100%/2);
}
現在,如果#test
元件,比方說div
,是500像素寬,我想--halfWidth
變量被設置爲250像素。
但是,據我所知,var(--halfWidth)
其他地方使用的代碼只是在calc(100%/2)
字符串中而不是250px
。這意味着我不能使用say元素A的計算並稍後在元素B中使用它,因爲它將簡單地將例如width: var(--halfWidth);
設置爲元素B的寬度的一半,而不是元素A的寬度的一半,其中變量被定義。
我已經搜遍了網絡,試圖找到有關此行爲的任何文檔,但我至今已經畫出了一個空白。
理想的情況下,設定使用計算應以兩種形式提供一個CSS變量:
- 一個變種工作就像這個例子,只是在字符串中下探-是,禁止任何字符串變量替換。
- 第二個變體,其中calc()將產生計算結果而不是簡單地替換字符串。
如何實現這一目標?我寧願將實際的實施留給適合它的人,但有一種可能性是一種事情;像eval(calc(100%/2))
會給出結果250px
。
無論如何,如果任何人有任何關於此行爲的真實文檔或解決方案,以獲得上述示例來產生結果,我都是耳朵!
編輯:僅供參考,我在https://drafts.csswg.org/css-variables/
備註:爲什麼不使用LESS或SASS來完成這些任務? – Justinas
我同意@Justinas,SASS對此更自然.. –
您是否看過規格第2.2節? – BoltClock