Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简单css:before:悬停不起作用?没有错误吗?_Css_Css Selectors_Pseudo Element_Pseudo Class_Csslint - Fatal编程技术网

简单css:before:悬停不起作用?没有错误吗?

简单css:before:悬停不起作用?没有错误吗?,css,css-selectors,pseudo-element,pseudo-class,csslint,Css,Css Selectors,Pseudo Element,Pseudo Class,Csslint,这应该很简单,我只是不明白为什么它不起作用。将鼠标悬停在:before上时,应将其不透明度更改为1,但不会更改。为什么? p { padding-top:15px; position:relative; } p:before { display:block; width:55px; height:55px; content: 'hello'; background:#fff; padding:5px 10px; posit

这应该很简单,我只是不明白为什么它不起作用。将鼠标悬停在
:before
上时,应将其不透明度更改为1,但不会更改。为什么?

p {
    padding-top:15px;
    position:relative;
}

p:before {
    display:block;
    width:55px;
    height:55px;
    content: 'hello';
    background:#fff;
    padding:5px 10px;
    position:absolute;
    right:0;
    opacity:.5;
    -webkit-transition: all 0.3s ease-in-out;

}

p:before:hover {
    opacity:1;
    bakcground:#000;
}

编辑:我正在使用Chrome。

而不是
p:before:hover
,您需要
p:hover:before


请参阅:

如果您想让它在Internet Explorer中工作,只需在css中添加以下代码即可:

p:hover{}
就这些

Internet Explorer的工作示例(10):


顺便说一句,Ie7、IE6不支持:之前和之后。IE8支持有缺陷。@尼克斯:你甚至可以加上IE不支持
不透明度
-webkit转换
仅是webkit。。。很多事情OP已经知道,但显然并不关心。有很多事情可能对某些人来说是显而易见的,而对其他人来说则不然。这不一定适用于OP,但其他人稍后将阅读此问题。不过,毫无价值的是CSS Lint不是验证器。这只是抱怨,嗯,每件事。特别是规范所说的一切都是可以/鼓励的。是的,我听到过关于CSS lint的抱怨,但是如果它没有抛出错误,那么我很确定我很好。。。因为它会抱怨一切。很好,如果我想将悬停事件添加到p:before元素,那么当我悬停p:before元素时,它会改变不透明度,而不是段落本身呢?@android.nick:不幸的是,伪元素(例如
:before
)无法做到这一点,这就是我一直在寻找的答案,谢谢!