黑马程序员技术交流社区

标题: css伪选择器的问题 [打印本页]

作者: naruto2205    时间: 2013-12-16 22:37
标题: css伪选择器的问题
伪选择器是否可以用于除a标签之外的元素?

作者: haxyek    时间: 2013-12-17 00:20
可以。。只是可能浏览器不兼容
作者: 师弟    时间: 2013-12-17 13:37
查CSS文档去,不同的标签有不同的威选择器,不仅只是a标签的那四个
作者: 568839480    时间: 2013-12-21 16:46
可以、、、、、、
作者: 卖火柴    时间: 2013-12-21 18:16
可以使用csshover.htc文件。
是国外一名作者写的,用于解决低版本IE不支持a以外的元素使用:hover 、:active 伪类的问题。
简单的说下使用方法:
下载csshover.htc文件至网站目录,然后在CSS文件中引用它就好了。
如:
li:hover {
    color:red;
    behavior:url(csshover.htc);
}
亦或者建立一个标签组来应用它:
div , li , h1 , h2 {
    behavior:url(csshover.htc);
}
这样你就不用在每一个需要应用的元素内部写代码了。

建议:
尽量用具体的选择器,避免用*号。建议的写法如下:
#nav ul li ,#sidebar ul li , #page-nav .menu span {
    behavior:url(csshover.htc);
}
这样写,可以避免程序历遍整个网页所带来的资源消耗。

推荐中小型网站使用。大型网站谨慎使用,尽可能使用js解决hover兼容问题。
更多的使用方法,可以在网上搜一下,有很多文章可供参考。
作者: 一席倾城    时间: 2013-12-23 16:34
可以。。。。。。。。
作者: 卖火柴    时间: 2013-12-23 16:39
伪类:
伪类常用于超链接标签<a>中,当然也可以用于其他标签,例如输入框<input>等。伪类主要有以下几种类型:
            :link(正常情况,即未访问时的状态)
            :visited (被访问过后的状态)
            :active(按下鼠标时的状态)
            :hover(鼠标放在其上的状态)
            :focus(获得输入焦点时的状态)
            :first-child(第一个子元素的样式定义)
            :lang () (特定语言环境时的样式)
举个例子,例如在导航栏菜单中,鼠标放在上面时,经常或改变背景颜色,可以这么设置:
               a.menu : hover {background: red;}
此时,class属性名为menu的菜单在鼠标放置上方时,背景就会变成红色,提醒访问者。
也可以将不同的伪类结合起来,比如:
              a:visited:hover {background:green;}
当把鼠标放在已经访问过的超链接时,背景为绿色。
伪元素:
   跟伪类相类似,常用伪元素有以下几种:
            :first-letter (第一个字母、汉字等)
            :first-line(第一行)
            :before (标签内容之前)
            :after(标签内容之后)
例如:
             body:after  {cotent: end; color:blue;}
在页面结束后,会自动加上红色的end字样。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2