0

css样式一旦被应用不应该永久改变吗?见下文:

 <style>
div{width:100px;height:100px;background-color:red}
div:hover{background-color:black}
</style>

<body>
<div></div>
</body>

我的意思是说,当hover元素上发生时,元素的背景颜色会改变,一旦改变,它应该永久改变,因为悬停状态改变了元素的属性。

我也看到了永久改变财产的案例

4

2 回答 2

2

不,hover意味着只有当鼠标悬停在元素上时才会应用此样式。一旦鼠标停止悬停在元素上,样式就会恢复到以前的样子。

如果您希望进行这样的永久性更改,您可能需要 JavaScript。

于 2012-12-27T17:12:11.150 回答
0

ezuk 的答案很好(接受那个),但我很无聊,想到了一个仅使用 CSS 的非常愚蠢的解决方案。

HTML

<div>
  <span>hello</span>
</div>​

CSS

body, html {
  width: 100%;
  height: 100%;
}
div {
  display: inline-block;
  background-color: #eee;
}
div:hover {
  width: 100%;
  height: 100%;
}
div:hover > span {
  background-color: #555;
}

在 JSFiddle 上查看

它一直有效,直到您将鼠标移出浏览器(或 iFrame 或其他)

:)

于 2012-12-27T17:20:03.987 回答