最近在国外的一个网站上看到的一个关于结构性伪类选择器的用法,觉得十分实用,就自己尝试了一下,并把它给记录下来:
这是最基本的样式:
1
body内的内容:
1 <body> 2 <ul> 3 <li>第01个li> 4 <li>第02个li> 5 <li>第03个li> 6 <li>第04个li> 7 <li>第05个li> 8 <li>第06个li> 9 <li>第07个li> 10 <li>第08个li> 11 <li>第09个li> 12 <li>第10个li> 13 <li>第11个li> 14 ul> 15 body>
首先是最基本的结构性伪类选择器的用法:
1 li:nth-child(8){ 2 background-color: #298EB2; 4 }
结果展示为:
立即学习“前端免费学习笔记(深入)”;

利用:nth-child(n+6) 相当于:nth-child(6)及以上的li标签元素:
1 li:nth-child(n+6){ 2 background-color: #298EB2; 4 }
结果展示为:
立即学习“前端免费学习笔记(深入)”;

同理利用:nth-child(-n+6) 相当于:nth-child(6)及以下的li标签元素:
1 li:nth-child(-n+6){ 2 background-color: #298EB2; 4 }
结果展示为:
立即学习“前端免费学习笔记(深入)”;

技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
根据以上原理我们可以来一些进阶的:
比如可以利用 nth-child(n+4):nth-child(-n+8) 达到获取:nth-child(4)及以上和:nth-child(8)及以下的li标签元素:
1 li:nth-child(n+4):nth-child(-n+8){ 2 background-color: #298EB2; 3 }
结果展示为:
立即学习“前端免费学习笔记(深入)”;

还可以利用 :nth-child(n+2):nth-child(odd):nth-child(-n+8) 获取:nth-child(n+2)到:nth-child(-n+8)之间的单数li标签元素:
1 li:nth-child(n+2):nth-child(odd):nth-child(-n+8){ 2 background-color: #298EB2; 3 }
结果展示为:
立即学习“前端免费学习笔记(深入)”;

最后我们还可以利用:nth-child(3n+1)获取数目为1、4、7、10中的偶数li标签元素:
1 li:nth-child(3n+1):nth-child(even){ 2 background-color: #298EB2; 3 }
结果展示为:
立即学习“前端免费学习笔记(深入)”;










