伪类选择器 nth-child() 在IE6-8和FF3.0-浏览器不支持,CSS3中nth-of-type(n)(比如nth-of-type(1))这个特殊的类选择符可以样式更加个性的标题和段落等,不过,目前nth-of-type(n)只支持火狐3、opera、safari和chrome等部分浏览器。

:nth-child()选择某个元素的一个或多个特定的子元素;你可以按这种方式进行选择: 

:nth-child(length);/*参数是具体数字 length为整数*/

:nth-child(n);/*参数是n,n从0开始计算*/

:nth-child(n*length)/*n的倍数选择,n从0开始算*/

:nth-child(n+length);/*选择大于length后面的元素*/

:nth-child(-n+length)/*选择小于length前面的元素*/

:nth-child(n*length+1);/*表示隔几选一*/

例子:

li:nth-child(3){background:orange;}/*把第3个li的背景设为橙色*/

li:nth-child(3n){background:orange;}/*把第3、第6、第9、…、所有3的倍数的li的背景设为橙色*/

li:nth-child(n+3){background:orange;}/*选择从第3个元素后面的li背景设为橙色*/

li:nth-child(-n+3){background:orange;}/*选择从第3个元素前面的li把背景设为橙色*/

li:nth-child(3n+1){background:orange;}/*这种方法是实现隔几选一的效果*/

:fist-child选择某个元素的第一个子元素

例子:

li:first-child {background: green;}/*把第1个li的背景设为绿色*/

:last-child选择某个元素的最后一个子元素

例子:

li:last-child {background: green;}/*把最后一个li的背景设为绿色*/

:nth-last-child()选择某个元素的一个或多个特定的子元素,从这个元素的最后一个子元素开始算

:nth-last-child()选择器和前面的:nth-child()很相似,只是这里多了一个last,所以他起的作用就和前面的":nth-child"不一样了,他只要是从最后一个元素开始算,来选择特定元素。

例子:

li:nth-last-child(4) {background: red;}/*把倒数第4个li的背景设为红色*/

:nth-of-type()选择指定的元素

:nth-of-type类似于:nth-child,不同的是他只计算选择器中指定的那个元素,其实我们前面的实例都是指定了具体的元素,这个选择器主要对用来定位元素中包含了好多不同类型的元素是很有用处。比如说,我们div.demo下有好多p元素,li元素,img元素等,但我只需要选择p元素,并让他每隔一个p元素就有不同的样式,那我们就可以简单的写成:

p:nth-of-type(even) {background-color: lime;}

除了可以将n设置为odd(偶数)或even(奇数)外,还可以将n设置为表达式,比如,nth-of-type(3n+2)

:nth-last-of-type()选择指定的元素,从元素的最后一个开始计算

这个选择器不用说大家都能想得到了,他和前面的:nth-last-child一样使用,只是他指一了元素的类型而以。

同样在IE6-8和FF3.0-浏览器不支持这种选择器

:first-of-type选择一个上级元素下的第一个同类子元素;

:last-of-type选择一个上级元素的最后一个同类子元素;

:nth-of-type,:nth-last-of-type;:first-of-type和:last-of-type实际意义并不是很大,我们前面讲的:nth-child之类选择器就能达到这此功能,不过大家要是感兴趣还是可以了解一下,个人认为实用价值并不是很大。此类说法仅供参考。

:only-child表示的是一个元素是它的父元素的唯一一个子元素

<ul>

<li>1</li>

<li>2</li>

</ul>

<ul>

<li>3</li>

</ul>

如果我需要在ul只有一个p元素的时候,改变这个li的样式,那么我们现在就可以使用:only-child,如:

ul li {padding-left:10px;}

ul li:only-child {padding-left:15px}

:only-of-type选择一个元素是它的上级元素的唯一一个相同类型的子元素

是表示一个元素他有很多个子元素,而其中只有一个子元素是唯一的,那么我们使用这种选择方法就可以选择中这个唯一的子元素,比如说

<section>

<h2>伪类选择器的用法</h2>

<p>CSS3 伪类选择器only-of-type的用法</p>

<p>CSS3 伪类选择器only-of-type的用法</p>

</section>

如果我们想只选择中上面中的h2元素,我们就可以这样写,

h2:only-of-type{color:red;}

:empty选择的元素里面没有任何内容

:empty是用来选择没有任何内容的元素,这里没有内容指的是一点内容都没有,哪怕是一个空格,比如说,你有三个段落,其中一个段落什么都没有,完全是空的,你想这个p不显示,那你就可这样来写:

p:empty {display: none;}

最新文章

  1. 高级渲染技巧和代码示例 GPU Pro 7
  2. Oracle Sales Cloud:报告和分析(BIEE)小细节2——利用变量和过滤器传参(例如,根据提示展示不同部门的数据)
  3. 字符串匹配算法--Brute-Force算法
  4. Beginning Scala study note(3) Object Orientation in Scala
  5. verilog断言(SVA:systemverlog assertion)语法 ---- 转载
  6. poi实现将数据输出到Excel表格当中
  7. Lucida Grande字体无法正常显示冒号的解决方案
  8. git push -u origin master 上传出错问题
  9. openstack私有云布署实践【13.1 网络Neutron-compute节点配置(科兴环境)】
  10. SQLServer创建用户自定义数据库用户
  11. Visual Studio 2015 key 许可证,下载地址
  12. 快速测试方法——JUnit
  13. 20165304《Java程序设计》第九周学习总结
  14. jackson/fastjson、mybatis、mysql date/datatime/timestamp、java Date/Timestamp关系详解
  15. opencv2函数学习之blur,GaussianBlur,medianBlur和bilateralFilter:实现图像平滑处理
  16. 跟厂长学PHP7内核(八):深入理解字符串的实现
  17. php 二维数组打乱顺序
  18. windows7+cuda8+cudnn6+python36+tensorflow_gpu1.4配置
  19. lazarus安装
  20. HTML(form标签)、CSS

热门文章

  1. jquery操作滚动条滚动到指定元素位置 scrollTop
  2. python 多线程 压测 mysql
  3. 【OS_Linux】yum命令安装软件
  4. CSS3-媒体类型
  5. Qtopia移植
  6. laravel中的视图合成器
  7. JavaScript正则表达式-反向引用
  8. Android自动化测试Uiautomator--UiObject接口简介
  9. 10大mysql需要注意的参数
  10. 本机机器ssh docker容器