CSS3 基本知识CSS3 选择器
|
Pseudo Class 伪类伪类是在文档树之外进行选择的方法,伪类必须以:后跟类名完成。 语法:
例子 1:
<style>
div:hover{background:yellow}
textarea:hover{background:yellow}
</style>
<div>CSS3 伪类 hover 测试。当鼠标移动到这里来之后,这里的背景颜色将变成黄色。</div>
<p>CSS3 伪类 hover 测试。当鼠标移动到这里来之后,这里的背景颜色将不会变成黄色。</p>
<textarea>CSS3 伪类 hover 测试。当鼠标移动到这里来之后,这里的背景颜色将变成黄色。</textarea>
测试结果:Internet Explorer 7,Internet Explorer 8,Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 2:
<style>
textarea:focus{background:yellow}
</style>
<textarea>CSS3 伪类 focus 测试。当鼠标或者键盘将焦点移动到这里来之后,这里的背景颜色将变成黄色。</textarea>
测试结果:Internet Explorer 8,Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 3:
<style>
:target{border:2px solid red;}
p.node:target{ border:2px solid red;background:yellow;}
</style>
<ol>
<li><a href="#target1">target1 测试</a></li>
<li><a href="#target2">target2 测试</a></li>
<li><a href="#top">top 测试</a></li>
</ol>
<h1 id="target1">id="target1" 的内容</h1>
<a href="http://dotnet.aspx.cc" name="target2">name="target2" 的链接</a>
<p class="node" id="top">lass="node" id="top" 的内容。</p>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。Internet Explorer 9 不支持name定义的标识符。
例子 4:
<style>
:lang(zh-cn){ border:2px solid red;background:yellow;margin:20px 0;}
:lang(zh)
{
box-shadow: 0.2em 0.2em 0.3em #888;
-webkit-box-shadow: 0.2em 0.2em 0.3em #888;/* only Safari used */
}
</style>
<div lang="zh-cn">孟宪会之 CSS3 中文参考手册</div>
<div lang="zh">孟宪会之 CSS3 中文参考手册</div>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 5:
<style>
div:not(.menu){ border:2px solid red;background:yellow;margin:20px 0;}
p :not(span){ color:red;} /* 注意这里的空格,p后面的空格要注意 */
</style>
<div class="menu">孟宪会之 CSS3 中文参考手册:这里应该没有背景颜色。</div>
<div>孟宪会之 CSS3 中文参考手册:里应该有背景颜色</div>
<p>
<label>label 元素的字体颜色是红色的。</label>
<span>span 元素的字体颜色不是红色的。</span>
</p>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 6:
<style>
:checked { width:60px;height:60px; }
#ch1:checked { width:60px;height:60px; }
.ch2:checked { width:60px;height:60px; }
</style>
<input type="checkbox" />
<input id="ch1" type="checkbox" />
<input class="ch2" type="checkbox" />
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 7:
<style>
:enabled { background:orange; }
:disabled { background:#000; }
</style>
<input type="button" enabled="enabled" value="我只是一个按钮" />
<input type="button" value="我也是一个按钮" onclick="this.disabled='disabled'" />
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 8:
<style>
:root { background:yellow;}
</style>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 9:
<style>
#first tr:nth-child(2n+1){background: yellow;}
#second tr:nth-child(even){background: yellow;}
#third tr:nth-child(2){background: yellow;}
#forth tr:nth-child(-n+3){background: yellow;}
</style>
<h2>表格1</h2>
<table border="1" id="first">
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
</table>
<h2>表格2</h2>
<table border="1" id="second">
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
</table>
<h2>表格3</h2>
<table border="1" id="third">
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
</table>
<h2>表格4</h2>
<table border="1" id="forth">
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
<tr>
<td>cell</td><td>cell</td>
</tr>
</table>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 10:
<style>
div {margin:6px;}
#menu1 :nth-last-child(-n+5){background:yellow;}
#menu2 :nth-last-child(odd){background:yellow;}
</style>
<h2>测试1</h2>
<div id="menu1">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
<h2>测试2</h2>
<div id="menu2">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
上面的menu1中的子元素div,最后5个子div的背景颜色是黄色的,menu2中,从后面往前数,奇数个位置的节点背景颜色为黄色。测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 11:
<style>
div {margin:6px;}
#menu1 :nth-of-type(2n){background:yellow;}
#menu2 :nth-of-type(3n+1){background:yellow;}
</style>
<h2>测试1</h2>
<div id="menu1">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
<h2>测试2</h2>
<div id="menu2">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 12:
<style>
div {margin:6px;}
#menu1 :nth-last-of-type(3){background:yellow;}
#menu2 :nth-last-of-type(-3n+3){background:yellow;}
</style>
<h2>测试1</h2>
<div id="menu1">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
<h2>测试2</h2>
<div id="menu2">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 13:
<style>
div {margin:6px;}
#menu1 :first-child{background:yellow;}
#menu1 :last-child{background:yellow;}
</style>
<h2>测试1</h2>
<div id="menu1">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 14:
<style>
div {margin:6px;}
#menu1 :first-of-type{background:yellow;}
#menu1 :last-of-type{background:yellow;}
</style>
<h2>测试1</h2>
<div id="menu1">
<div>孟宪会之CSS3中文参考一</div>
<div>孟宪会之CSS3中文参考二</div>
<div>孟宪会之CSS3中文参考三</div>
<div>孟宪会之CSS3中文参考四</div>
<div>孟宪会之CSS3中文参考五</div>
<div>孟宪会之CSS3中文参考六</div>
<div>孟宪会之CSS3中文参考七</div>
<div>孟宪会之CSS3中文参考八</div>
<div>孟宪会之CSS3中文参考九</div>
<div>孟宪会之CSS3中文参考十</div>
</div>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 15:
<style>
div {margin:6px;}
#menu1 :only-of-type{background:yellow;}
#menu2 div:only-of-type{background:yellow;}
</style>
<h2>测试1</h2>
<div id="menu1">
<div>这里符合:only-of-type</div>
<font>这里也符合:only-of-type</font>
<span>这2个不符合 :only-of-type</span>
<span>这2个不符合 :only-of-type</span>
</div>
<h2>测试2</h2>
<div id="menu2">
<div>只有div符合:only-of-type</div>
<span>span不符合 :only-of-type</span>
</div>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 16:
<style>
div {margin:6px;}
#menu1 :empty{border:2px solid red;padding:3px;}
</style>
<h2>测试1</h2>
<div id="menu1">
<div></div>
<font>这里也符合:only-of-type</font>
<span></span>
<span>这2个不符合 :only-of-type</span>
</div>
测试结果:Internet Explorer 9,Firefox 4,Opera 11,Safari 5,Chrome 10 都支持该属性。
例子 17:
<style>
:default{background:#F00;}
</style>
<form>
<select>
<option>1</option>
<option selected="selected">2</option>
<option>3</option>
</select>
<input type="submit" value="提交" />
<input type="submit" value="提交" />
</form>
测试结果:Firefox 4 支持select和submit按钮,Opera 11在鼠标移动时才有效果,Safari 5,Chrome 10 都支持submit按钮。
本属性最后更新时间:2011-4-27 10:25:24
|