亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
博主信息
博文 16
粉絲 0
評論 0
訪問量 17318
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
偽類選擇器與選擇器權重的實例演示,盒子計算大小box-sizing屬性的功能演示
大碗寬面
原創(chuàng)
968人瀏覽過

一. css中的選擇器及其權重

概括:當出現樣式層疊時(使用不同的選擇器但是匹配到的是同一個元素且設置的是同一個樣式屬性)由選擇器的權重或者在樣式表中的位置決定

1. 選擇器權重

選擇器的權重的值由四個獨立的部分 a,b,c,d 組成。進行復合選擇器的權重計算時四個部分是獨立的,不會出現進位。在比較大小時按從 a-b-c-d 的順序依次進行比較,高位相同才需要比較低位。

選擇器 權重 權重等級
!important 無窮大 0
style 行內屬性 1,0,0,0 1
id 選擇器 0,1,0,0 2
class 類選擇器 0,0,1,0 3
標簽,偽元素選擇器 0,0,0,1 4
通配符選擇器* 0,0,0,0 5
繼承的樣式 沒有權重 6

2.常用選擇器

1. 基本/通配符選擇器:

通配符選擇器使用*來定義,用來匹配所以的元素,他的權重是0,0,0,0 常用于清楚瀏覽器默認樣式

  1. /* 通配符選擇器,可以匹配所有的元素 */
  2. *{
  3. padding: 0;
  4. margin: 0;
  5. box-sizing: border-box;
  6. list-style: none;
  7. }

2. 標簽選擇器

標簽選擇器是指用html標簽名字elementName作為選擇器,為頁面中的某一類標簽指定統(tǒng)一的CSS樣式,他的權重是0,0,0,1,

  1. /* 標簽選擇器,為所以的li標簽元素設置color顏色 */
  2. li{
  3. color: aqua;
  4. }

3. 類選擇器

類選擇器使用className來定義,如果想要差異性選擇不同的標簽,可以使用類選擇器,可以把某一些標簽元素共同擁有的樣式放到同一個類中。這樣這些元素可以添加這個公共的類,然后也可以添加自己獨有的類。

  1. /* 這三個元素具有相同的顏色屬性,所以將他們放同一個類中 */
  2. .item{
  3. color: aqua;
  4. }
  5. /*background-color屬性是第一個元素獨有的樣式,所以可以將他設置為一個獨有的類 */
  6. .first{
  7. background-color:red;
  8. }
  1. <ul class="nav">
  2. <li>item1</li>
  3. <li>item2</li>
  4. <li>item3
  5. <ul class="list">
  6. <li class="item first">list1</li>
  7. <li class="item">list2</li>
  8. <li class="item last">list3</li>
  9. </ul>
  10. </li>
  11. <li>item4</li>
  12. <li>item5</li>
  13. <li>item6</li>
  14. <li>item7</li>
  15. <li>item8</li>
  16. <li>item9</li>
  17. </ul>

4. ID選擇器

id選擇器用idName來定義,id選擇器一般用于選擇頁面唯一的元素,他的權重是0,1,0,0

  1. /* 為id為paw的元素設置寬度樣式 */
  2. #paw{
  3. width: 50px;
  4. }
  1. <label for="paw">密碼:</label><input type="password" name="" id="paw">

二. 偽類選擇器

1. 結構偽類選擇器

語法 作用
E:nth-child() 匹配的元素在括號內定義。
E:first-child 匹配的元素是其父元素的第一個子元素
E:nth-last-child() 從最后一個元素往前數。數幾個括號定義
E:last-child 匹配的元素是其父元素的最后一個子元素

結構偽類選擇器
結構偽類選擇器用于選擇具有某些特定特征的一類元素的選擇器,他們的這些特征和 html 結構(在 html 中的位置)有關。他們的權重是 0,0,1,0(同類選擇器)。

(1.) E:nth-child()示例

  1. /* nth-child 匹配子級的第幾個元素,括號內定義 */
  2. .nav > .list:nth-child(3) {
  3. color: aqua;
  4. }

(2.) E:nth-last-child()示例

  1. /* nth-last-child 從最后一個元素往前數,括號內定義 */
  2. .nav > .list:nth-last-child(4) {
  3. color: blue-;
  4. }

(3. ) E:first-child 示例

  1. /* :first-child 匹配第一個子級元素 */
  2. .nav > :first-child {
  3. color: brown-;
  4. }

(4.) E:last-child 示例

  1. /* last-child匹配最后一個元素 */
  2. .nav > :last-child {
  3. color: blueviolet;
  4. }

(5.) E:nth-child()/E:last-child() 括號計算公式=a*n + b

  1. /*a= 0,1,2,3,...
  2. n= 0,1,2,3,...
  3. b= 從0開始...
  4. an + b =a*n +b*/
  5. /* 偶數 even =2n
  6. 奇數 odd =2n+1 */

示例1

  1. /* 獲取前五個 a=-1 反向 */
  2. .nav > :nth-child(-n + 5) {
  3. color: blueviolet;
  4. }

示例2

  1. /* 獲取后五個 */
  2. .nav > :nth-last-child(-n + 5) {
  3. color: blueviolet;
  4. }

示例3

  1. /* 獲取雙數 */
  2. .nav > :nth-last-child(2n) {
  3. color: blueviolet;
  4. }

ps:雙數可以用even表示

示例4

  1. /* 獲取單數 */
  2. .nav > :nth-last-child(2n + 1) {
  3. color: blueviolet;
  4. }

ps:雙數可以用odd表示

2. 狀態(tài)偽類選擇器

語法 作用
:hover 鼠標懸停
:enabled 有效控件
:disabled 禁用控件
:checked 選中控件
:focus 焦點控件
:not() 過濾掉某些元素
:empty() 空,匹配的元素必須沒有子元素
:invalid 根據輸入類型匹配有非法輸入值的元素
:link 用來選擇未被訪問過的鏈接
:visited 選擇已經被訪問過的鏈接
:active 選擇鼠標按下的鏈接
(1). hover 鼠標懸停 示例
  1. /* hover 鼠標懸停 */
  2. .nav > .list:nth-child(3):hover {
  3. background-color: aquamarine;
  4. color: beige;
  5. }

ps:需要注意的是這四個偽類的書寫順序:
:link 和 :visited 必須寫在 :hover 和 :active前面,否則 :hover 和 :active 的樣式將被覆蓋(層疊)掉。
:hover 必須寫在 :active 的前面,否則點擊樣式會被鼠標覆蓋樣式層疊(點擊元素必然是在鼠標覆蓋元素的情況下發(fā)生)。
平時使用時按照需求按照上面的順序書寫。
:hover 和 :active 不只對 a 元素有效,也可以應用于其他元素。

三. 盒子模型

盒子模型組成有 4 部分,分別為:內容 內邊距 邊框

外邊距(不計入盒子實際寬度)

盒子模型有 2 種:標準盒子模型與怪異盒子模型

(1). 標準盒子模型=content(內容)+border(邊框)+padding(內邊距)
  1. <div class="box"></div>
  1. .box {
  2. width: 200px;
  3. height: 100px;
  4. border: 2px solid black;
  5. padding: 20px;
  6. background-color: aquamarine;
  7. }

ps: width=200 + border22(左右) +padding2020(左右) =244px
(2). 怪異盒子模型=content(內容)(已經包含了 padding 和 border)
  1. <div class="box"></div>
  1. .box {
  2. width: 200px;
  3. height: 100px;
  4. border: 2px solid black;
  5. padding: 20px;
  6. background-color: aquamarine;
  7. box-sizing: border-box;
  8. }

ps:

默認值 box-sizing: content-box; width=200 + border22(左右) +padding2020(左右) =244px

怪異盒子模型box-sizing: border-box; 內容區(qū)content 已經包含了內邊距padding和邊框border

批改老師:PHPzPHPz

批改狀態(tài):合格

老師批語:作業(yè)依舊完成的很好,很認真,繼續(xù)加油
本博文版權歸博主所有,轉載請注明地址!如有侵權、違法,請聯(lián)系admin@php.cn舉報處理!
全部評論 文明上網理性發(fā)言,請遵守新聞評論服務協(xié)議
0條評論
作者最新博文
關于我們 免責申明 意見反饋 講師合作 廣告合作 最新更新
php中文網:公益在線php培訓,幫助PHP學習者快速成長!
關注服務號 技術交流群
PHP中文網訂閱號
每天精選資源文章推送
PHP中文網APP
隨時隨地碎片化學習
PHP中文網抖音號
發(fā)現有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號

  • 登錄PHP中文網,和優(yōu)秀的人一起學習!
    全站2000+教程免費學