精品免费在线观看-精品欧美-精品欧美成人bd高清在线观看-精品欧美高清不卡在线-精品欧美日韩一区二区

17站長網(wǎng)

17站長網(wǎng) 首頁 編程教程 CSS3教程 查看內(nèi)容

only 元素選擇

only-child & only-of-type

在前端開發(fā)頁面的過程中需要對一些特定類型的元素賦予特殊的樣式,通常我們不會在 HTML 標(biāo)簽上一個個去增加 class 去設(shè)置特殊的樣式,這時候通過元素選擇偽類就能解決這類問題。本章主要介紹 only-child 和 only-of-type 這兩個偽類。

1. 官方定義

only-child 匹配屬于父元素中唯一子元素。
only-of-type 匹配屬于父元素的特定類型的唯一子元素。

2. 解釋

only-child 當(dāng)元素添加這個偽類的時候,它在所屬的父元素之內(nèi),有且僅有它自己時偽類生效。

3. 語法

.demo:only-child{
}
.demo:only-of-type{
    
}

說明:通過 : 后面加偽類進(jìn)行元素選擇。

4. 兼容性

IEEdgeFirefoxChromeSafariOperaiosandroid
allallallallallallallall

5. 實例

only-child

1. 當(dāng)頁面中只有一個.demo 標(biāo)簽時候背景變成紅色:

<body>
    <div class="demo">網(wǎng)</div>    
</body>
.demo:only-child{
    color:#fff;
    background: red;
    padding:px;
}

效果圖:

編程之家

一個標(biāo)簽時候背景變成紅色效果圖
<!DOCTYPE html>
<html lang="en">
<head>
    <Meta charset="UTF-8">
    <Meta name="viewport" content="width=`, initial-scale=1.0">
    <title>Document</title>
    <style>
    .demo:only-child{
    color:#fff;
    background: red;
    padding:px;
    }
</style>
</head>
<body>
    <body>
	    <div class="demo">網(wǎng)</div>    
	</body>
</body>
</html>

2. 當(dāng)頁面有兩個 demo class 時候不再有任何效果:

<body>
    <div class="demo">網(wǎng)</div>    
     <div class="demo">網(wǎng)</div>    
</body>
.demo:only-child{
    color:#fff;
    background: red;
    padding:px;
}

效果圖:

編程之家

無效果效果圖
<!DOCTYPE html>
<html lang="en">
<head>
    <Meta charset="UTF-8">
    <Meta name="viewport" content="width=`, initial-scale=1.0">
    <title>Document</title>
    <style>
        .demo:only-child{
            color:#fff;
            background: red;
            padding:px;
        }
    </style>
</head>
<body>
        <div class="demo">網(wǎng)</div>    
         <div class="demo">網(wǎng)</div>    
</body>
</html>

說明:body 下面有兩個 demo 不是唯一子元素,這時候偽類就不再起作用。

注意:當(dāng) demo 元素內(nèi)部包含 demo 元素還是起作用的,因為 body 下面的子元素只有 1 個。

<body>
	<div class="demo"> 網(wǎng) 
	    <div class="demo"> 網(wǎng)  </div>
	    <div class="demo"> 網(wǎng)  </div> 
	</div>
</body>

效果圖:

編程之家

一個元素效果圖
<!DOCTYPE html>
<html lang="en">
<head>
    <Meta charset="UTF-8">
    <Meta name="viewport" content="width=`, initial-scale=1.0">
    <title>Document</title>
    <style>
        .demo:only-child{
            color:#fff;
            background: red;
            padding:px;
        }
    </style>
</head>
<body>
      <div class="demo"> 網(wǎng) 
          <div class="demo"> 網(wǎng)  </div>
          <div class="demo"> 網(wǎng)  </div> 
      </div>
</body>
</html>

如果我們希望在 demo 內(nèi)部只有一個 demo 時候 ,內(nèi)部的 demo 變成紅色怎么做呢?

<div class="demo"> 網(wǎng) 
    <div class="demo"> 網(wǎng)  </div>
</div>
.demo>.demo:only-child{
    color:#fff;
    background: red;
    padding:px;
}

效果圖:

編程之家

demo 內(nèi)部只有 一個 demo 時候 內(nèi)部的 demo 變成紅色效果圖
<!DOCTYPE html>
<html lang="en">
<head>
    <Meta charset="UTF-8">
    <Meta name="viewport" content="width=`, initial-scale=1.0">
    <title>Document</title>
    <style>
     .demo>.demo:only-child{
        color:#fff;
        background: red;
        padding:px;
    }
    </style>
</head>
<body>
    <body>
        <div class="demo"> 網(wǎng) 
            <div class="demo"> 網(wǎng)  </div>           
        </div>
    </body>
</body>
</html>

only-of-type

1. 給類名為 demo 的元素增加紅色背景

<body>
    <div class="demo"> 網(wǎng) </div>   
</body>
 .demo:only-of-type{
    color:#fff;
    background: red;
    padding:px;
}

效果圖:

編程之家

demo 變紅效果圖
<!DOCTYPE html>
<html lang="en">
<head>
    <Meta charset="UTF-8">
    <Meta name="viewport" content="width=`, initial-scale=1.0">
    <title>Document</title>
    <style>
    .demo:only-of-type{
        color:#fff;
        background: red;
        padding:px;
    }
    </style>
</head>
<body>
    <div class="demo"> 網(wǎng) </div>
</body>
</html>

說明:這里發(fā)現(xiàn)它和 only-child 的功能類似,但其實是不一樣的我們看下面這個例子:

<body>
    <div class="demo"> 網(wǎng) </div>
    <p class="demo"> 網(wǎng)  </p>
</body>
 .demo:only-of-type{
    color:#fff;
    background: red;
    padding:px;
}

效果圖:

編程之家

變紅效果圖
<!DOCTYPE html>
<html lang="en">
<head>
    <Meta charset="UTF-8">
    <Meta name="viewport" content="width=`, initial-scale=1.0">
    <title>Document</title>
    <style>
    .demo:only-of-type{
        color:#fff;
        background: red;
        padding:px;
    }
    </style>
</head>
<body>
    <div class="demo"> 網(wǎng) </div>
    <p class="demo"> 網(wǎng)  </p>
</body>
</html>

解釋:我們發(fā)現(xiàn)同樣都變紅了。這是因為 兩個 demo 并不是唯一的。因為其中一個是 div 而另一個是 p,這時候 only-child 是不能分辨的,這也是它們的區(qū)別。

6. Tips

這兩個偽類功能很類似,我們不容易區(qū)分但是這里有個小技巧 :only-child 就像 JS 中的 id 一樣,只能是唯一的。

返回頂部
主站蜘蛛池模板: 成年免费大片黄在线观看一 | 美国特级黄 色大片 | 国内精品51视频在线观看 | 快射视频在线观看 | 亚洲欧美日韩精品永久在线 | 91小视频在线观看免费版高清 | 一级片网站在线观看 | 免费播放拍拍视频在线观看 | 一级特黄aaaaaa大片 | 国产成人影院在线观看 | 亚洲精品自产拍在线观看 | 在线观看高清视频bbixx | 免费在线观看污片 | 黄色片免费观看网站 | 亚洲欧美日韩国产综合久 | 久久网址 | 国产福利一区二区麻豆 | 男女免费爽爽爽在线视频 | 丁香婷婷激情五月 | 国产成人h综合亚洲欧美在线 | 打美眉屁股v7.3| 国产成人网 | 精品美女在线观看 | 亚洲第一页国产 | 99久久国语露脸精品对白 | 亚洲成人在线播放视频 | 高清免费a级在线观看国产 高清免费毛片 | 美女一级黄色 | 日本xxx片免费高清在线 | 未满十八18周岁禁止免费国产 | 亚洲人成在线精品 | 久久精品国产福利国产琪琪 | 性欧美一级毛片 | 成人亲子乱子伦视频 | 成人国产欧美精品一区二区 | 国产精品91在线 | 日本乱中文字幕系列 | 美女大黄大色一级特级毛片 | 国产a免费视频 | 国产又黄又免费aaaa视频 | 久久国产成人 |