有没有办法:hover 只使用 CSS?如:如果:hover是on Mouse Enter,是否有CSS相当于一个on Mouse Leave?
例:
我有一个使用列表项的HTML菜单.当我将鼠标悬停的项目之一,有来自CSS彩色动画#999来black.当鼠标离开项目区域时,如何创建相反的效果,动画从?black到#999?
(请记住,我不想只回答这个例子,而是整个"相反的:hover"问题.)
Spa*_*ers 84
如果我理解正确,你可以通过将转换移动到链接而不是悬停状态来做同样的事情:
ul li a {
color:#999;
transition: color 0.5s linear; /* vendorless fallback */
-o-transition: color 0.5s linear; /* opera */
-ms-transition: color 0.5s linear; /* IE 10 */
-moz-transition: color 0.5s linear; /* Firefox */
-webkit-transition: color 0.5s linear; /*safari and chrome */
}
ul li a:hover {
color:black;
cursor: pointer;
}
Run Code Online (Sandbox Code Playgroud)
http://jsfiddle.net/spacebeers/sELKu/3/
悬停的定义是:
:鼠标悬停选择器用于在鼠标悬停时选择元素.
根据该定义,悬停的反面是鼠标不在其上的任何点.比我聪明的人做了这篇文章,在这两种状态上设置了不同的过渡 - http://css-tricks.com/different-transitions-for-hover-on-hover-off/
#thing {
padding: 10px;
border-radius: 5px;
/* HOVER OFF */
-webkit-transition: padding 2s;
}
#thing:hover {
padding: 20px;
border-radius: 15px;
/* HOVER ON */
-webkit-transition: border-radius 2s;
}
Run Code Online (Sandbox Code Playgroud)
Mar*_*lin 18
只需使用CSS过渡而不是动画.
A {
color: #999;
transition: color 1s ease-in-out;
}
A:hover {
color: #000;
}
Run Code Online (Sandbox Code Playgroud)
Jar*_*ber 13
相反的是使用 :not
例如
selection:not(:hover) { rules }
小智 6
将您的持续时间放入非悬停选项中:
li a {
background-color: #111;
transition:1s;
}
li a:hover {
padding:19px;
}
Run Code Online (Sandbox Code Playgroud)
只需向您正在处理的元素添加一个过渡即可。请注意,页面加载时可能会产生一些影响。就像如果你改变了边框半径,你会在 dom 加载时看到它。
.element {
width: 100px;
transition: all ease-in-out 0.5s;
}
.element:hover {
width: 200px;
transition: all ease-in-out 0.5s;
}Run Code Online (Sandbox Code Playgroud)