天天看點

使用calc 函數 動态計算width

由于

flex

的相容性對項目需求來說已經足夠,是以最近經常使用flex來進行布局;

使用calc 函數 動态計算width

最近遇到了一個需求,如下圖所示:

1.外部box的width是按螢幕的百分比自動計算出來的;

2.需要始終保證1和2的的寬度一直是保持一緻的。

使用calc 函數 動态計算width

1的寬度,是{

flex:33.33%

};

如果要保持2的寬度始終和1的一樣,使用具體的數值顯然是不友善換算的。

這時候,使用

calc() 函數

進行

動态計算

,就會變得很高效便利。

calc函數的相容性

如圖:

使用calc 函數 動态計算width

具體寫法如圖:上下左右邊距都是15px,是以要先用總的寬度扣掉

2*15px

;然後再除以3個item,就可得到每個item的寬度。這樣子,隻要在相容的浏覽器中浏覽網頁,就能始終保證1和2的寬度一緻,在視覺上就顯得很好看~~~

使用calc 函數 動态計算width

使用calc需要注意一些事項:

1.

運算符前後都需要保留一個空格

,例如:width: calc(100% - 10px);

2.

任何長度值

都可以使用calc()函數進行計算;

3.calc()函數支援 “+”, “-”, “*”, “/” 運算;

4.calc()函數使用标準的

數學運算優先級

規則;