您好,登錄后才能下訂單哦!
小編給大家分享一下Web前端程序員必須會用的CSS技巧有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1、元素的margin的top、bottom及padding的top、bottom使用百分比作為單位時(shí),其是相對父元素的寬度width的而不是我們想象的高度height;
舉個(gè)例子:
其實(shí)出現(xiàn)這種現(xiàn)象,我們可以巧用margin/padding的百分比值實(shí)現(xiàn)高度自適應(yīng)(多用于占位,避免閃爍)
當(dāng)然該元素高度上的百分比是相對其父元素高度的百分比的,min-height及max-height也適用這條規(guī)律。
2、含有定位屬性的元素,其top、bottom單位為百分比時(shí),該百分比是相對于父元素的高度的。
在這里小編建了一個(gè)前端學(xué)習(xí)交流扣扣群:132667127,我自己整理的最新的前端資料和高級開發(fā)教程,如果有想需要的,可以加群一起學(xué)習(xí)交流
同理,left、right則是相對于父元素的寬度的。
這一點(diǎn),我昨天在查資料寫這篇文章—最全面的元素水平垂直居中方法匯總的時(shí)候就發(fā)現(xiàn)有個(gè)大牛也理解錯(cuò)了—-CSS布局奇淫技巧之–各種居中里面的第八點(diǎn)。
3、邊框?qū)挾炔辉试S使用百分比值
這點(diǎn)就不解釋了。
4、width:100%
當(dāng)父容器里有絕對定位的子元素時(shí),子元素設(shè)置width:100%實(shí)際上指的是相對于父容器的padding+content的寬度。當(dāng)子元素是非絕對定位的元素時(shí)width:100%才是指子元素的 content ,其等于父元素的 content寬度。
將上面子元素的position改成了relative后,其寬度就變成了parent寬度。
5、line-height
你知道line-height:150%和line-height:1.5的區(qū)別嗎?知道了就可以跳過此處,不知道繼續(xù)看下面:
舉個(gè)例子:
上面可以看到line-height有單位時(shí),子元素是繼承父元素的line-height的,無單位時(shí),其line-height等于無單位的數(shù)值乘以子元素本身的字體大小。顯然為了不出現(xiàn)意外,還是建議首選無單位的。
6、ex和 ch單位
ex:取當(dāng)前作用效果的字體的x的高度,在無法確定x高度的情況下以0.5em計(jì)算;
ch:以節(jié)點(diǎn)所使用字體中的“0”字符為基準(zhǔn),找不到時(shí)為0.5em;
ex和 ch單位,類似于 em和 rem,依賴于當(dāng)前的字體和字體大小。但是,不同的是,這兩貨是基于字體的度量單位,依賴于設(shè)定的字體。
ch單位通常被定義為數(shù)字0的寬度。你可以在Eric Meyers的博客里找到關(guān)于它的一些有意思的討論,例如將一個(gè)等寬字體的字母”N”的寬度設(shè)置為40ch,那么在另一種類型的字體里它卻可以包含40個(gè)字母。
這個(gè)單位的傳統(tǒng)用途主要是盲文的排版,但是除此之外,肯定還有可以應(yīng)用他的地方。
ex定義為當(dāng)前字體的小寫x字母的高度或者 1/2的 1em。很多時(shí)候,它是字體的中間標(biāo)志。
x-height; the height of the lower case x
這些單位有很多用途,大部分用于版式的微調(diào)。比方說,sup元素(上角文字標(biāo)),可以通過position:relative;bottom: 1ex;實(shí)現(xiàn) 。類似的方法,你可以實(shí)現(xiàn)一個(gè)下角文字標(biāo)。瀏覽器默認(rèn)的方式是利用
上標(biāo)和下標(biāo)特定垂直對齊規(guī)則,但是如果你想更細(xì)粒度更精確得控制,你可以像下面這樣做:
Css代碼
7、使用calc時(shí)運(yùn)算符之間要有空格 ,否則可能無效。
以上是“Web前端程序員必須會用的CSS技巧有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。