溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何讓css的權(quán)重變得更友好

發(fā)布時(shí)間:2022-03-01 17:38:27 來源:億速云 閱讀:123 作者:iii 欄目:web開發(fā)

這篇文章主要介紹了如何讓css的權(quán)重變得更友好的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇如何讓css的權(quán)重變得更友好文章都會(huì)有所收獲,下面我們一起來看看吧。

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

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

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

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

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

  技巧三:使用inherit屬性值繼承其父元素樣式來覆蓋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也是這樣使用的。如果你不是這樣使用,說明你已經(jīng)...

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

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

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

  <body>

  <mainclass=“Posts”>

  <asideclass=“SideBar”>

  <navclass=“Nav”>

  <pclass=“Bio”>

  CSS是這樣寫的:

  .Bio{

  font-size:.8em;

  line-height:1.5;

  color:#888;

  }

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

  .SideBar{

  font-size:.8em;

  color:#888;

  }

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

  :root{

  line-height:1.5;

  }

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

關(guān)于“如何讓css的權(quán)重變得更友好”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“如何讓css的權(quán)重變得更友好”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

css
AI