真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

css樣式中calc的含義是什么

這篇文章主要介紹“css樣式中calc的含義是什么”,在日常操作中,相信很多人在css樣式中calc的含義是什么問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”css樣式中calc的含義是什么”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

創(chuàng)新互聯(lián)專(zhuān)業(yè)為企業(yè)提供四平網(wǎng)站建設(shè)、四平做網(wǎng)站、四平網(wǎng)站設(shè)計(jì)、四平網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、四平企業(yè)網(wǎng)站模板建站服務(wù),10多年四平做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

在css中,calc是計(jì)算的意思;calc可以理解為一個(gè)函數(shù)function,是calculate的縮寫(xiě),用來(lái)指定一個(gè)元素的長(zhǎng)度,calc可以給元素做計(jì)算,使用指定的單位值計(jì)算出長(zhǎng)度值,語(yǔ)法為“元素{長(zhǎng)度屬性:calc(表達(dá)式)}”。

本教程操作環(huán)境:windows10系統(tǒng)、CSS3&&HTML5版本、Dell G3電腦。

css樣式中的calc是什么意思

calc()從字面我們可以把他理解為一個(gè)函數(shù)function。其實(shí)calc是英文單詞calculate(計(jì)算)的縮寫(xiě),是css3的一個(gè)新增的功能,用來(lái)指定元素的長(zhǎng)度。

比如說(shuō),你可以使用calc()給元素的border、margin、pading、font-size和width等屬性設(shè)置動(dòng)態(tài)值。為何說(shuō)是動(dòng)態(tài)值呢?因?yàn)槲覀兪褂玫谋磉_(dá)式來(lái)得到的值。不過(guò)calc()最大的好處就是用在流體布局上,可以通過(guò)calc()計(jì)算得到元素的寬度。

calc()能做什么?

calc()能讓你給元素的做計(jì)算,你可以給一個(gè)div元素,使用百分比、em、px和rem單位值計(jì)算出其寬度或者高度,比如說(shuō)“width:calc(50% + 2em)”,這樣一來(lái)你就不用考慮元素DIV的寬度值到底是多少,而把這個(gè)煩人的任務(wù)交由瀏覽器去計(jì)算。

calc()語(yǔ)法

calc()語(yǔ)法非常簡(jiǎn)單,就像我們小時(shí)候?qū)W加 (+)、減(-)、乘(*)、除(/)一樣,使用數(shù)學(xué)表達(dá)式來(lái)表示:

.elm {
  width: calc(expression);
}

其中”expression”是一個(gè)表達(dá)式,用來(lái)計(jì)算長(zhǎng)度的表達(dá)式。

calc()的運(yùn)算規(guī)則

calc()使用通用的數(shù)學(xué)運(yùn)算規(guī)則,但是也提供更智能的功能:

使用“+”、“-”、“*” 和 “/”四則運(yùn)算;

可以使用百分比、px、em、rem等單位;

可以混合使用各種單位進(jìn)行計(jì)算;

表達(dá)式中有“+”和“-”時(shí),其前后必須要有空格,如”widht: calc(12%+5em)”這種沒(méi)有空格的寫(xiě)法是錯(cuò)誤的;

表達(dá)式中有“*”和“/”時(shí),其前后可以沒(méi)有空格,但建議留有空格。

大家在實(shí)際使用時(shí),同樣需要添加瀏覽器的前綴

 .elm {
    /*Firefox*/
    -moz-calc(expression);
    /*chrome safari*/
    -webkit-calc(expression);
    /*Standard */
    calc();
 }

通過(guò)上面的了解,大家對(duì)calc()不在那么陌生,但對(duì)于實(shí)際的運(yùn)用可能還是不太了解,那么大家就接下來(lái)跟我一起動(dòng)手,通過(guò)實(shí)例來(lái)了解他吧。首先我們來(lái)看一個(gè)最常用的實(shí)例:


     

上面的結(jié)構(gòu)很簡(jiǎn)單,就是一個(gè)div.demo的元素中包含了一個(gè)div.box的元素,接下來(lái)我們一步一步來(lái)看其中的變化。

第一步:添加普通樣式:

.demo {
    width: 300px;
    background: #60f;
}
.box {
  width: 100%;
    background: #f60;
    height: 50px;
}

此時(shí)的效果很簡(jiǎn)單,就是div.box完全遮蓋了div.demo,如下圖所示:

css樣式中calc的含義是什么

第二步,在div.box上添加border和padding

這一步很棘手的事情來(lái)了,在div.box上添加10px的內(nèi)距padding,同時(shí)添加5px的border:

.demo {
    width: 300px;
    background: #60f;
}
.box {
  width: 100%;
  background: #f60;
  height: 50px;
  padding: 10px;
  border: 5px solid green;
}

為了更好的說(shuō)明問(wèn)題,我在div.demo上添加了一個(gè)padding:3px 0;

.demo {
    width: 300px;
    background: #60f;
padding: 3px 0;  
}
.box {
  width: 100%;
  background: #f60;
  height: 50px;
  padding: 10px;
  border: 5px solid green;
}

這個(gè)時(shí)候大家不知道能否想到問(wèn)題會(huì)發(fā)生在哪?其實(shí)很簡(jiǎn)單,這個(gè)時(shí)候div.box的寬度大于了其容器div.demo的總寬度,從而撐破容器伸出來(lái)了,如圖所示:

css樣式中calc的含義是什么

第三步,calc()的運(yùn)用

為了解決撐破容器的問(wèn)題,以前我們只能去計(jì)算div.box的寬度,用容器寬度減去padding和border的值,但有時(shí)候,我們苦于不知道元素的總寬度,比如說(shuō)是自適應(yīng)的布局,只知道一個(gè)百分值,但其他的值又是px之類(lèi)的值,這就是難點(diǎn),死卡住了。隨著CSS3的出現(xiàn),其中利用box-sizing來(lái)改變?cè)氐暮心P皖?lèi)型實(shí)使實(shí)現(xiàn)效果,但今天我們學(xué)習(xí)的calc()方法更是方便。

知道總寬度是100%,在這個(gè)基礎(chǔ)上減去boder的寬度(5px 2 = 10px),在減去padding的寬度(10px 2 = 20px),即”100% - (10px + 5px) * 2 = 30px” ,最終得到的值就是div.box的width值:

.demo {
    width: 300px;
    background: #60f;
    padding: 3px 0;
}
.box {
    background: #f60;
    height: 50px;
    padding: 10px;
    border: 5px solid green;
width: 90%;/*寫(xiě)給不支持calc()的瀏覽器*/
    width:-moz-calc(100% - (10px + 5px) * 2);
    width:-webkit-calc(100% - (10px + 5px) * 2);
    width: calc(100% - (10px + 5px) * 2);
}

這樣一來(lái),通過(guò)calc()計(jì)算后,div.box不在會(huì)超出其容器div.demo的寬度,如圖所示:

css樣式中calc的含義是什么

到此,關(guān)于“css樣式中calc的含義是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!


當(dāng)前標(biāo)題:css樣式中calc的含義是什么
分享網(wǎng)址:http://weahome.cn/article/ijcdhh.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部