国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > WEB開發(fā) > 正文

巧用css3的calc()屬性進行響應(yīng)式布局

2024-04-27 15:14:23
字體:
供稿:網(wǎng)友

今天瀏覽這個http://www.sitepoint.com站時,因為好奇看了下人家寫的代碼,結(jié)果發(fā)現(xiàn)了這行代碼,calc1于是就研究了一下,calc()從字面我們可以把他理解為一個函數(shù)function。其實calc是英文單詞calculate(計算)的縮寫,是CSS3的一個新增的功能,用來指定元素的長度。比如說,你可以使用calc()給元素的border、margin、pading、font-size和width等屬性設(shè)置動態(tài)值。為何說是動態(tài)值呢?因為我們使用的表達式來得到的值。不過calc()最大的好處就是用在流體布局上,可以通過calc()計算得到元素的寬度。

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)”這種沒有空格的寫法是錯誤的;表達式中有“*”和“/”時,其前后可以沒有空格,但建議留有空格。

瀏覽器的兼容性calc2

我們來個例子,我們做一個三列并排的模塊,寬度按百分比、有padding值、有border值、還有margin-right,而且這三個值是px,

li{float:left;width:33.3333%;height:50px;padding:10px;margin-right:10px;background:#FF6666;border:5px solid #DAC8A7;}

效果圖:calc3它是不會好好并列的,在這種情況下就不好算了,就算算出來也有那么一點誤差,不是嗎?現(xiàn)在我們就用到了calc(),

li{float:left;//width:33.3333%;height:50px;padding:10px;margin-right:15px;background:#FF6666;border:5px solid #DAC8A7;width:calc(33.3333% - (10px + 5px) * 2 - 15px )}

意思是(width-(padding+border)*2-margin)現(xiàn)在可以并排了

calc4

好了,到這就告一段絡(luò)了,再稍微優(yōu)化一下左右邊15px的空距,讓兩邊都挨邊。就在父級上加個margin-right:-15px,OK 搞定,

現(xiàn)在拿這個去做響應(yīng)模式應(yīng)該很方便了,


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 贵德县| 库尔勒市| 锦州市| 房产| 闽侯县| 广饶县| 卫辉市| 承德县| 宾阳县| 哈密市| 荥阳市| 平远县| 灵山县| 新野县| 白水县| 华坪县| 黎平县| 丹寨县| 和田县| 米泉市| 衡南县| 东丽区| 汝城县| 师宗县| 侯马市| 日土县| 巴林左旗| 黔江区| 铜川市| 黄陵县| 旬阳县| 韶关市| 土默特右旗| 县级市| 安宁市| 溧阳市| 浦北县| 商水县| 禹城市| 华阴市| 高台县|