成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

CSS選擇器和優先級總結,告誡自己不能任性使用!important

開發 前端
本文將告訴大家關于CSS選擇器和優先級總結,同時告誡大家不能任性使用!important。

 [[276154]]

如果在項目里面使用了通用的reset.css樣式,但是在具體的頁面里面要對同一個樣式進行覆蓋式修改,不借助與scoped的和inner style,你會怎么做?會不會像我一樣在剛接觸的時候給要覆蓋的樣式后面加上!important屬性

本文將告訴大家關于CSS選擇器和優先級總結,同時告誡大家不能任性使用!important。

[[276155]]

 

舉個詳細點例子,下面這段代碼輸出的樣式是什么樣的?以及為什么是你說說的答案?

 

 

CSS三大特性—— 繼承、 優先級和層疊。

繼承:即子類元素繼承父類的樣式;

優先級:是指不同類別樣式的權重比較;

層疊:是說當數量相同時,通過層疊(后者覆蓋前者)的樣式。

CSS選擇符分類

首先來看一下css選擇符(css選擇器)有哪些?

1.標簽選擇器(如:body,div,p,ul,li)

2.類選擇器(如:class="head",class="head_logo")

3.ID選擇器(如:id="name",id="name_txt")

4.全局選擇器(如:*號)

5.組合選擇器(如:.head .head_logo,注意兩選擇器用空格鍵分開)

6.后代選擇器 (如:#head .nav ul li 從父集到子孫集的選擇器)

7.群組選擇器 div,span,img {color:Red} 即具有相同樣式的標簽分組顯示

8.繼承選擇器(如:div p,注意兩選擇器用空格鍵分開)

9.偽類選擇器(如:就是鏈接樣式,a元素的偽類,4種不同的狀態:link、visited、active、hover。)

10.字符串匹配的屬性選擇符(^ $ *三種,分別對應開始、結尾、包含)

11.子選擇器 (如:div>p ,帶大于號>)

12.CSS 相鄰兄弟選擇器器 (如:h1+p,帶加號+)

CSS優先級

當兩個規則都作用到了同一個html元素上時,如果定義的屬性有沖突,那么應該用誰的值的,CSS有一套優先級的定義。

不同級別

  1. 在屬性后面使用 !important 會覆蓋頁面內任何位置定義的元素樣式。
  2. 作為style屬性寫在元素內的樣式
  3. id選擇器
  4. 類選擇器
  5. 標簽選擇器
  6. 通配符選擇器
  7. 瀏覽器自定義或繼承

總結排序:!important > 行內樣式>ID選擇器 > 類選擇器 > 標簽 > 通配符 > 繼承 > 瀏覽器默認屬性

同一級別

同一級別中后寫的會覆蓋先寫的樣式

上面的級別還是很容易看懂的,但是有時候有些規則是多個級別的組合,像這樣

CSS優先級:是由四個級別和各級別的出現次數決定的。

四個級別分別為:

  1. 行內選擇符
  2. ID選擇符
  3. 類別選擇符
  4. 元素選擇符

優先級的算法:

  1. 每個規則對應一個初始"四位數":0、0、0、0
  2. 若是 行內選擇符,則加1、0、0、0
  3. 若是 ID選擇符,則加0、1、0、0
  4. 若是 類選擇符/屬性選擇符/偽類選擇符,則分別加0、0、1、0
  5. 若是 元素選擇符/偽元素選擇符,則分別加0、0、0、1

算法:將每條規則中,選擇符對應的數相加后得到的”四位數“,從左到右進行比較,大的優先級越高。

為了更好的理解這些計算規則,舉些例子如下:

CSS選擇器和優先級總結,告誡自己不能任性使用!important

 

選擇器的解析原則

以前一直認為選擇器的定位DOM元素是從左向右的方向,查看了網上的相關資料之后才發現原來自己一直都是錯的。鄭重的聲明選擇器定位DOM元素是從右往左的方向,這樣的好處是盡早的過濾掉一些無關的樣式規則和元素 。

簡潔、高效的css

[[276156]]

 

所謂高效就是讓瀏覽器查找更少的元素標簽來確定匹配的style元素。

1.不要再ID選擇器前使用標簽名

解釋:ID選擇是唯一的,加上標簽名相當于畫蛇添足了,沒必要。

2.不要在類選擇器前使用標簽名

解釋:如果沒有相同的名字出現就是沒必要,但是如果存在多個相同名字的類選擇器則有必要添加標簽名防止混淆如(p.colclass{color:red;} 和 span.colclass{color:red;}

3.盡量少使用層級關系;

#divclass p.colclass{color:red;}改為 .colclass{color:red;}

4.使用類選擇器代替層級關系

5. 保持CSS的可讀性

 

責任編輯:龐桂玉 來源: 今日頭條
相關推薦

2010-09-16 15:32:20

CSS選擇器

2025-05-26 09:40:02

!importantCSS 優先級開發

2010-09-03 09:30:29

CSS選擇器

2010-09-06 14:53:27

CSS優先級

2010-09-13 17:30:07

CSS優先級

2010-09-01 14:10:36

CSS優先級

2010-08-31 11:04:48

CSS優先級

2024-05-07 13:29:00

CSS選擇器權重

2012-08-14 09:38:29

WAN優化

2013-03-11 10:30:56

CSSWeb

2010-09-07 11:14:32

CSS屬性選擇器CSS

2023-03-16 10:20:55

CSS選擇器

2010-09-07 11:31:23

CSS派生選擇器CSS

2010-08-26 12:53:40

CSSid選擇器

2010-09-06 09:41:28

CSS繼承

2010-09-06 08:52:00

CSS選擇器

2010-08-26 12:47:15

CSSclass

2023-01-30 08:42:33

CSS選擇器性能

2022-12-23 09:41:14

優先級反轉

2010-09-03 09:21:38

CSS選擇器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久亚洲综合 | 欧美一级免费片 | 久久草视频 | 久久久久久久国产精品影院 | 中文二区| 免费看国产精品视频 | 夜夜骑首页 | 日韩在线视频一区二区三区 | 亚洲伊人久久综合 | 欧美一区免费 | 日日操操 | 一区二区三区四区不卡视频 | 久久国产一区二区三区 | 人人干人人爽 | 超碰97干| 欧美激情国产日韩精品一区18 | 伊人狼人影院 | 国产成人免费视频 | 91麻豆蜜桃一区二区三区 | 欧美日韩亚洲三区 | 香蕉视频一区二区 | 欧美一区不卡 | 免费成人在线网站 | 亚洲九九精品 | 自拍偷拍精品 | 久久久人成影片免费观看 | 亚洲视频免费一区 | 99精品久久| 国产二区三区 | 亚洲天堂一区 | 免费国产一区二区 | 日日摸日日添日日躁av | 日韩免费在线视频 | 一区二区三区国产 | 亚洲精品9999| 久久国产亚洲精品 | 99在线播放 | 97av视频| 三区在线观看 | 黑人巨大精品欧美黑白配亚洲 | 国产日韩欧美另类 |