由于看到火狐主頁里面的排版竟然用到了calc,所以就好奇研究了一下。
創(chuàng)新互聯(lián)公司一直在為企業(yè)提供服務(wù),多年的磨煉,使我們在創(chuàng)意設(shè)計,全網(wǎng)整合營銷推廣到技術(shù)研發(fā)擁有了開發(fā)經(jīng)驗。我們擅長傾聽企業(yè)需求,挖掘用戶對產(chǎn)品需求服務(wù)價值,為企業(yè)制作有用的創(chuàng)意設(shè)計體驗。核心團隊擁有超過10年以上行業(yè)經(jīng)驗,涵蓋創(chuàng)意,策化,開發(fā)等專業(yè)領(lǐng)域,公司涉及領(lǐng)域有基礎(chǔ)互聯(lián)網(wǎng)服務(wù)成都服務(wù)器托管、成都app開發(fā)、手機移動建站、網(wǎng)頁設(shè)計、網(wǎng)絡(luò)整合營銷。calc()能做什么?
calc()能讓你給元素的做計算,你可以給一個div元素,使用百分比、em、px和rem單位值計算出其寬度或者高度,比如說“width:calc(50% + 2em)”,這樣一來你就不用考慮元素DIV的寬度值到底是多少,而把這個煩人的任務(wù)交由瀏覽器去計算。
calc()語法
calc()語法非常簡單,就像我們小時候?qū)W加 (+)、減(-)、乘(*)、除(/)一樣,使用數(shù)學(xué)表達式來表示:
width: calc(expression);
其中”expression”是一個表達式,用來計算長度的表達式。
calc()的運算規(guī)則
calc()使用通用的數(shù)學(xué)運算規(guī)則,但是也提供更智能的功能:
使用“+”、“-”、“*” 和 “/”四則運算;
可以使用百分比、px、em、rem等單位;
可以混合使用各種單位進行計算;
表達式中有“+”和“-”時,其前后必須要有空格,如”widht: calc(12%+5em)”這種沒有空格的寫法是錯誤的;
表達式中有“*”和“/”時,其前后可以沒有空格,但建議留有空格。
瀏覽器的兼容性
就像火狐的主頁一樣,憑借另一神器box-sizing:border-box;在排版中我們就不用在乎border,padding是多少了,我們只要看margin值是10px(請參照上傳的第一張截圖),然后用width: calc((100% - 80px) / 4);是不是就輕松排版了呢?
可以參考下面自己簡單子寫了一個案例:
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。