Heim  >  Artikel  >  Web-Frontend  >  CSS中伪选择器的用法实例

CSS中伪选择器的用法实例

WBOY
WBOYOriginal
2016-06-01 09:53:071329Durchsuche

一  :nth-child 伪选择器

我们知道在jquery中有一种选择器叫做“子类选择器”,对应的有:nth-child,:first-child,:last-child,:only-child,这在CSS中同样

可以办到,可以说一定程度上缓解了jquery的压力,下面简单举个例子。

<code class="language-html">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title> <p> <style type="text/css">
ul li:nth-child(1) {
color: red;
}
</style>

</p>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
</ul>
</code>

CSS中伪选择器的用法实例

可以看到,当我灌的是:nth-child(1)的时候,ul的第一个li的color已经变成red了,如果复杂一点的话,可以将1改成n,浏览器在解析css的伪类

选择器的时候,内部应该会调用相应的方法来解析到对应dom的节点,首先要明白n是从0,步长为1的递增,这个和jquery的nth-child类似,没

什么好说的,然后我们尝试下:first-child 和 last-child。

<code class="language-html">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title> <p> <style type="text/css">
ul li:first-child {
color: red;
font-weight:800;
}</style></p> <p> ul li:last-child {
color: blue;
font-weight: 800;
}


</p>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
</ul>

</code>

CSS中伪选择器的用法实例

 

二 :checked,:unchecked,:disabled,:enabled

同样在jquery中,有一组选择器叫做“表单对象属性“,我们可以看看jquery的在线文档。

同样我们很开心的发现,在css中也存在这些属性。。。是不是开始有点醉了。。。还是先睹为快。

1. disabled,enabled

<code class="language-html">


<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title> <p> <style type="text/css">
input[type='text']:enabled {
border: 1px solid red;
}</style></p> <p> input[type='text']:disabled {
border: 1px solid blue;
}
</p> <p>
</p>
<form>
<input type="text" disabled>
<input type="text">
</form>

</code>

CSS伪选择器checked,:unchecked,:disabled,:enabled

 

2. checked,unchecked

<code class="language-html">


<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title> <p> <style type="text/css">
form input[type="radio"]:first-child:checked {
margin-left: 205px;
}
</style></p> <p>
</p>
<form>
<input class="test" type="radio" value="女"><span>女</span><br>
<input class="test" type="radio" value="男"><span>男</span> <p> </p>
</form>

</code>


css伪类选择器checked,unchecked

 

3. selected

这个在css中虽然没有原装的,但是可以用option:checked来替代,比如下面这样。

<code class="language-html">


<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title> <style type="text/css">
option:checked {
color: red;
}
</style>

<form>
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
</form>

</code>

css伪类选择器selected

 

三  empty伪选择器

这个选择器有点意思,在jquery中叫做”内容选择器“,就是用来寻找空元素的,如果玩转jquery的empty,这个也没有什么问题,

下面举个例子,让第一个空p的背景变色。

<code class="language-html">


<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title> <style type="text/css">
p:first-child{
width:500px;
height:20px;
}
p:empty {
background:red;
}
</style>

<p></p>
<p>他好</p>

</code>

css empty伪选择器

 

四:not(xxx) 伪选择器

同样这个也是非常经典的not选择器,在jquery中叫做”基本选择器“,想起来了没有???

css not(xxx) 伪选择器

总的来说,当你看完上面这些,是不是觉得css3中已经融入了一些”脚本处理行为”,这种感觉就是那个css再也不是你曾今认识的那个css了。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn