最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

css中你不知道的小技巧

來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 18:53:45
文檔

css中你不知道的小技巧

css中你不知道的小技巧:CSS中的級(jí)聯(lián)(cascade)在同一時(shí)間可謂是幸福的,也可以說(shuō)是痛苦不堪的。通常能工作得非常好,但有問(wèn)題的時(shí)候,也讓人們都很激動(dòng),甚至事件中也離開(kāi)不CSS。我們所涉及的不僅是CSS的級(jí)聯(lián)也還涉及到CSS的權(quán)重。不是說(shuō)碰到特殊問(wèn)題才顯得困難,可以說(shuō)CSS的困難
推薦度:
導(dǎo)讀css中你不知道的小技巧:CSS中的級(jí)聯(lián)(cascade)在同一時(shí)間可謂是幸福的,也可以說(shuō)是痛苦不堪的。通常能工作得非常好,但有問(wèn)題的時(shí)候,也讓人們都很激動(dòng),甚至事件中也離開(kāi)不CSS。我們所涉及的不僅是CSS的級(jí)聯(lián)也還涉及到CSS的權(quán)重。不是說(shuō)碰到特殊問(wèn)題才顯得困難,可以說(shuō)CSS的困難
CSS中的級(jí)聯(lián)(cascade)在同一時(shí)間可謂是幸福的,也可以說(shuō)是痛苦不堪的。通常能工作得非常好,但有問(wèn)題的時(shí)候,也讓人們都很激動(dòng),甚至事件中也離開(kāi)不CSS。我們所涉及的不僅是CSS的級(jí)聯(lián)也還涉及到CSS的權(quán)重。不是說(shuō)碰到特殊問(wèn)題才顯得困難,可以說(shuō)CSS的困難無(wú)處不在。

在這篇文章中,我將通過(guò)一些示例來(lái)向大家展示一些CSS的小技巧,讓你知道如何使用CSS的級(jí)聯(lián)能變得更友好,也減少一些不必要的需求,從而也減少權(quán)重上遇到的麻煩。

技巧一

每當(dāng)你寫(xiě)CSS時(shí),你想盡可能的回到樹(shù)形頂部。換句話說(shuō),回到:root。

例如,我們的網(wǎng)站有一個(gè)側(cè)邊欄,希望在這個(gè)側(cè)邊欄上添加一個(gè)簡(jiǎn)短的個(gè)人介紹。其HTML的結(jié)構(gòu)看起來(lái)可能會(huì)像這樣:

<body>
 <main class=“Posts”>
 <aside class=“SideBar”>
 <nav class=“Nav”>
 <p class=“Bio”>

CSS是這樣寫(xiě)的:

.Bio {
 font-size: .8em;
 line-height: 1.5;
 color: #888;
}

這樣寫(xiě)是能正常工作的,并不存在樣式上的問(wèn)題。但是,側(cè)邊欄還有一個(gè)導(dǎo)航nav,很有可能他們有一些樣式是相同的。在我們這個(gè)示例中font-size和color都是相同的。讓我們把這些屬性從nav和.Bio中提取出來(lái),并且將它們添加到其父元素.SideBar中:

.SideBar {
 font-size: .8em;
 color: #888;
}

事實(shí)證明,在.Posts中已經(jīng)設(shè)置了line-height:1.5;。似乎整個(gè)頁(yè)面都使用了相同的行高,那么我們可以將.Bio和.Posts中的line-height移到根元素中:

:root {
 line-height: 1.5;
}

這看起來(lái)是一個(gè)CSS常識(shí),但他也不會(huì)太關(guān)注兄弟元素定義同樣的事情。這也讓你發(fā)現(xiàn),有一些代碼產(chǎn)生重復(fù)。其實(shí)這并不可怕,因?yàn)槲覀冎恍枰c(diǎn)時(shí)間重新重構(gòu)代碼,但這樣保持了CSS的代碼處理健康狀態(tài)。

2288.jpg

在樹(shù)支上寫(xiě)樣式,而不應(yīng)該在樹(shù)葉上寫(xiě)樣式

技巧二

樣式總是作為特定屬性組合出現(xiàn)

一個(gè)很好的例子就是color和bakground-color的組合。除非你只做小調(diào)整,不然你需要一起調(diào)整他們。當(dāng)給一個(gè)元素添加背景顏色時(shí),它可能不包含任何文本,但可能會(huì)有一些子元素。因此,我們一起設(shè)置前景色(color)和背景色(background-color),我們總是可以確定這些元素不會(huì)遇到任何易讀性和對(duì)比問(wèn)題。下次我們改變背景色時(shí),不需要到處尋找需要修改的文本顏色,因?yàn)樗麄兌家砸粋€(gè)組合的形式出現(xiàn)在一起。

2289.jpg

技巧三

使用動(dòng)態(tài)值,比如currentColor和em等

有時(shí)候文本顏色也會(huì)使用在其他屬性上。比如說(shuō)border、box-shadow或者SVG圖標(biāo)中的fill上。定義相同顏色有一個(gè)替代方案,可以直接使用currentColor。默認(rèn)情況下,color是可以繼承的,你只需要在一個(gè)地方修改就可以改變其他屬性的顏色。

同樣的,給font-size屬性使用em單位,允許你只修改:root的font-size就可以改變?cè)氐暮心P痛笮 ?/p>

有關(guān)于這方面更多的細(xì)節(jié),可以查閱《使用字符串(STRINGS)設(shè)置樣式》一文。

111.gif

技巧四

使用inherit屬性值繼承其父元素樣式來(lái)覆蓋UA自帶樣式。

像button、input這樣的表單控件,不同的瀏覽器都會(huì)有自己的樣式風(fēng)格(UA樣式)。我們可以使用inherit繼承其父元素樣式,從而覆蓋瀏覽器的UA樣式。

button,
input,
select,
textarea {
 color: inherit;
 font-family: inherit;
 font-style: inherit;
 font-weight: inherit;
}

上面示例代碼取自sanitize.css。normalize.css也是這樣使用的。如果你不是這樣使用,說(shuō)明你已經(jīng)...

你也可以嘗試在input[type="range"]、input[type="radio"]和input[type="checkbox"]等元素上直接使用前面介紹的currentColor屬性自動(dòng)匹配顏色?;蛟S你不需要改變什么,可以將一個(gè)亮色系變成一個(gè)暗色系。

112.gif

總結(jié)

這些都是好東西,當(dāng)然并不是強(qiáng)迫大家使用。我想說(shuō),這些小技巧,簡(jiǎn)單實(shí)用,讓你的Web站點(diǎn)能獲取最大的好處。即使你使用一個(gè)CSS預(yù)處理器,他們也不會(huì)有損代碼的輸出量減少,甚至可以少設(shè)置幾個(gè)變量。

也適合單一類(lèi)名,比如像Tachyons?;蛟S還能減少?gòu)?fù)雜性和所需的類(lèi)。

另外一個(gè)有趣的事情即將到來(lái),那么在CSS中也可以自定義屬性,也就是CSS變量。與預(yù)處理器不同,覆蓋自定義屬性時(shí),它只會(huì)影響當(dāng)前的選擇范圍。所以從某種意義上來(lái)說(shuō),他們是“層疊變量”。

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

css中你不知道的小技巧

css中你不知道的小技巧:CSS中的級(jí)聯(lián)(cascade)在同一時(shí)間可謂是幸福的,也可以說(shuō)是痛苦不堪的。通常能工作得非常好,但有問(wèn)題的時(shí)候,也讓人們都很激動(dòng),甚至事件中也離開(kāi)不CSS。我們所涉及的不僅是CSS的級(jí)聯(lián)也還涉及到CSS的權(quán)重。不是說(shuō)碰到特殊問(wèn)題才顯得困難,可以說(shuō)CSS的困難
推薦度:
標(biāo)簽: 知道 使用 技巧
  • 熱門(mén)焦點(diǎn)

最新推薦

猜你喜歡

熱門(mén)推薦

專(zhuān)題
Top