帝国CMS利用伪类选择器制作多彩样式tags

作者:Davidszhou   来源:Davidszhou博客   时间:2014-07-08 21:56:46   点击:

   帝国CMS利用伪类选择器制作多彩tags

  CSS3的强大想必好多人都晓得,但是目前还有好多人停留在“IE”时代,我目前测试了一下,我电脑XP系统装的IE8,只有谷歌和火狐浏览器支持,装的UC也没有太好支持,但是我笔记本装的是IE11,UC浏览器可以支持,其“超前”的应用现在老IE支持还是有点“困难”。

  好了言归正传,对于一些技术小白来说帝国CMS的tags的调用都是超链接a后面加  即便调用出来也不是很美观“乌黑一片”有没有什么方法可以让这些tags看着像是无规则的样式。找了好久终于找到了-CSS3的伪类选择器::nth-child(an+b)。

  前面nth-child暂时不说,后面a和b可以理解为两个变量,可以自己设定。

  :nth-child(an+b)的伪类选择器的几种用法:

以<ul> <li></li> <li></li> <li></li> <li></li> <li></li> </ul>为例子写法:

  第一种:简单数字序号写法

  :nth-child(number)

  直接匹配第number个元素。参数number必须为大于0的整数。

  例子:

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

  第二种:倍数写法

  :nth-child(an)

  匹配所有倍数为a的元素。其中参数an中的字母n不可缺省,它是倍数写法的标志,如3n、5n。

  例子:

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

  第三种:倍数分组匹配

  :nth-child(an+b) 与 :nth-child(an-b)

  先对元素进行分组,每组有a个,b为组内成员的序号,其中字母n和加号+不可缺省,位置不可调换,这是该写法的标志,其中a,b均为正整数或0。如3n+1、5n+1。但加号可以变为负号,此时匹配组内的第a-b个。(其实an前面也可以是负号,但留给下一部分讲。)

  例子:

  li:nth-child(3n+1){background:orange;}/*匹配第1、第4、第7、…、每3个为一组的第1个LI*/

  li:nth-child(3n+5){background:orange;}/*匹配第5、第8、第11、…、从第5个开始每3个为一组的第1个LI*/

  li:nth-child(5n-1){background:orange;}/*匹配第5-1=4、第10-1=9、…、第5的倍数减1个LI*/

  li:nth-child(3n±0){background:orange;}/*相当于(3n)*/

  li:nth-child(±0n+3){background:orange;}/*相当于(3)*/

  第四种:反向倍数分组匹配

  :nth-child(-an+b)

  此处一负一正,均不可缺省,否则无意义。这时与:nth-child(an+1)相似,都是匹配第1个,但不同的是它是倒着算的,从第b个开始往回算,所以它所匹配的最多也不会超过b个。

  例子:

  li:nth-child(-3n+8){background:orange;}/*匹配第8、第5和第2个LI*/

  li:nth-child(-1n+8){background:orange;}/*或(-n+8),匹配前8个(包括第8个)LI,这个较为实用点,用来限定前面N个匹配常会用到*/

  第五种:奇偶匹配

  :nth-child(odd) 与 :nth-child(even)

  分别匹配序号为奇数与偶数的元素。奇数(odd)与(2n+1)结果一样;偶数(even)与(2n+0)及(2n)结果一样。

    当然帝国CMS的tags的调用都是a,那我们可以吧li换成a。

帝国CMS利用伪类选择器制作多彩样式tags

    这里我就简单的写了一点,至于文本样式 可以再后面文章提到:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

</head>

<style type="text/css">

#lizi { width:500px; height:500px; margin:auto; font-size:12px;}

#lizi a:nth-child(1) { padding:3px 5px; color:#FFF; background:#000; font-size:13px;}

#lizi a:nth-child(3n-4) { font-size:16px; color:#F00; font-weight:bold;}

#lizi a:nth-child(2n-1) { font-size:16px; color:#936;}

</style>

<body>

<div id="lizi">

<a href="#" target="_blank">自定义列表</a>&nbsp;

<a href="#" target="_blank">站点地图</a>&nbsp;

TAGS:帝国CMS , tags , 样式 , 伪类选择器 , nth-child

来自Davids zhou博客原创文章请尊重作者:http://www.zongk.com/zongk/11.html转载请标注此链接

网站统计
文章总数:129
今天发布:0
软件资源数:18