应用技巧:CSS特殊选择符伪类

2016-02-19 13:11 3 1 收藏

给自己一点时间接受自己,爱自己,趁着下午茶的时间来学习图老师推荐的应用技巧:CSS特殊选择符伪类,过去的都会过去,迎接崭新的开始,释放更美好的自己。

【 tulaoshi.com - Web开发 】

伪类可以看做是一种特殊的类选择符,是能被支持CSS的浏览器自动所识别的特殊选择符。它的最大的用处就是可以对链接在不同状态下定义不同的样式效果。

1. 语法

伪类的语法是在原有的语法里加上一个伪类(pseudo-class):

selector:pseudo-class {property: value}

(选择符:伪类 {属性: 值})

伪类和类不同,是CSS已经定义好的,不能象类选择符一样随意用别的名字,根据上面的语法可以解释为对象(选择符)在某个特殊状态下(伪类)的样式。

类选择符及其他选择符也同样可以和伪类混用:

selector.class:pseudo-class {property: value}

(选择符.类:伪类 {属性: 值})

2. 锚的伪类

我们最常用的是4种a(锚)元素的伪类,它表示动态链接在4种不同的状态:link、visited、active、hover(未访问的链接、已访问的链接、激活链接和鼠标停留在链接上)。我们把它们分别定义不同的效果:

a:link {color: #FF0000; text-decoration: none} /* 未访问的链接 */

a:visited {color: #00FF00; text-decoration: none} /* 已访问的链接 */

a:hover {color: #FF00FF; text-decoration: underline} /* 鼠标在链接上 */

a:active {color: #0000FF; text-decoration: underline} /* 激活链接 */

(上面这个例子中,这个链接未访问时的颜色是红色并无下划线,访问后是绿色并无下划线,激活链接时为蓝色并有下划线,鼠标在链接上时为紫色并有下划线)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

注意:有时这个链接访问前鼠标指向链接时有效果,而链接访问后鼠标再次指向链接时却无效果了。这是因为你把a:hover放在了a:visited的前面,这样的话由于后面的优先级高,当访问链接后就忽略了a:hover的效果。所以根据叠层顺序,我们在定义这些链接样式时,一定要按照a:link, a:visited, a:hover, a:actived的顺序书写。

3. 伪类和类选择符

将伪类和类组合起来用,就可以在同一个页面中做几组不同的链接效果了,例如,我们定义一组链接为红色,访问后为蓝色;另一组为绿色,访问后为黄色:

a.red:link {color: #FF0000}

a.red:visited {color: #0000FF}

a.blue:link {color: #00FF00}

a.blue:visited {color: #FF00FF}

现在应用在不同的链接上:

a href="..."这是第一组链接/a

a href="..."这是第二组链接/a

4. 其他伪类

此外CSS2还定义了首字和首行(first-letter和first-line)的伪类,可以对元素的首字或首行设定不同的样式。

下面看这个例子,我们在段落标记里定义文本首字尺寸为默认大小的3倍:

style type=”text/css”

p:first-letter {font-size: 300%}

/style

……

p

这是一个段落,这个段落的首字被放大了。

/p

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

我们再定义一个首行样式的例子:

style type=”text/css”

div p:first-line {color: red}

/style

……

div

p

这是段落的第一行

这是段落的第二行

这是段落的第三行

/p

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

/div

(上例中段落的第一行为红色,第二、三行为默认颜色)

注意:首字和首行的伪类需要IE5.5以上的版本支持

来源:http://www.tulaoshi.com/n/20160219/1603253.html

延伸阅读
标签: Web开发
和一般的CSS语法不同,CSS伪类的语法有两种。 第一种: selector:pseudo-class {property: value} 也可以用HTML的class属性来设定伪类。 例句: a:link {color:red} 第二种: selector.class:pseudo-class {property: value} 伪类是最常用的伪类。 例句: a.c1:link {color:red} 锚(a)伪类 锚(a)伪类是最常用的伪类。例句如...
标签: Web开发
去年曾总结了《IE对CSS样式表的限制和解决方案》中限制的第4条写道一个CSS文件的不能超过288kb?,这是一个疑问句,当时没有重现出来且参考来自Internet Explorer CSS File Size Limit。今天终于看到了IE在CSS上的另一个限制:IE中每个style标签或css文件的选择符个数不能超过4095。其实style属性也应该有这个限制,但是几乎不可能发生。这...
标签: Web开发
CSS3的强大,让人惊叹,人们在惊喜之余,又不得不为其艰难的道路感到可惜:好的标准只有得到行业浏览器的良好支持才算得上标准。CSS3标准已提出数年,但是目前能实现她的浏览器并不多,虽然部分浏览器能实现部分规范,但这又有什么用呢?面对更多的兼容性问题,CSSer们只有望洋轻叹。虽然如此,但有前瞻性的我们,又怎能停步不前呢?今天我...
标签: Web开发
选择器 p[name^=my]{font-size:14px} 选择器 ^= 讲规则应用到所有 name属性以my开头的p元素标签 p[name$=my]{font-size:14px} 选择器 $= 讲规则应用到所有 name属性以my结尾的p元素标签 p[name*=my]{font-size:14px} 选择器 $= 讲规则应用到所有 name属性包含my结尾的p元素上 选择器 、 + 、~ 选择器表示受影响的元素是第一个元素的子...
标签: Web开发
坦率的说,我写CSS时,有至少1/4的时间是在纠结选择符该如何命名。随意的命名,会让你陷入尴尬。 举个例子,我们需要在一段文字里将某些词标红。所以为此建了一个.red { color: red; }。结果产品经理觉得,红色太刺眼了,改成橘色比较好吧。这下头大啦,难道写成.red { color: orange; }么...

经验教程

128

收藏

82
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部