【发布时间】:2016-11-07 19:37:50
【问题描述】:
我有两个 div,当一个悬停在 div 的文本(链接)上时,填充从 0 增加到 5px。我的问题是,每当我将鼠标悬停在文本上并且填充增加时,div 就会向下移动。代码如下:
<div id="container" class="text1">
<a id="text1style" href="#" style="font-family:arial;font-size:120%;
text-decoration:none;">Some text</a>
</div>
<div id="container" class="text2">
<a id="text2style" href="#" style="font-family:arial;font-size:120%;
text-decoration:none;">text</a>
</div>
#container {
position:relative;
}
a:link, a:visited, a:active {
color:blue;
}
a:hover {
color:yellow;
}
.text1box {
left:200px;
bottom:35px;
width:243px;
}
#text1style {
-webkit-transition:color 0.5s;
-o-transition:color 0.5s;
-moz-transition:color 0.5s;
-ms-transition:color 0.5s;
transition:color 0.5s;
-webkit-transition:background-color 0.5s;
-o-transition:background-color 0.5s;
-moz-transition:background-color 0.5s;
-ms-transition:background-color 0.5s;
transition:background-color 0.5s;
}
#text1style:hover {
padding:5px;
border-radius:10px;
background-color:red;
}
.text2 {
left:455px;
bottom:57px;
width:90px;
}
#text2style {
-webkit-transition:color 0.5s;
-o-transition:color 0.5s;
-moz-transition:color 0.5s;
-ms-transition:color 0.5s;
transition:color 0.5s;
-webkit-transition:background-color 0.5s;
-o-transition:background-color 0.5s;
-moz-transition:background-color 0.5s;
-ms-transition:background-color 0.5s;
transition:background-color 0.5s;
}
#text2style:hover {
padding:5px;
border-radius:10px;
background-color:red;
}
更新的代码:我已将填充扩展应用于各个链接,而不是 div,这有所帮助。我还有两个问题:1)(链接的)文本仍然略微向右移动。 2)当我移开鼠标(即:悬停结束)时,您可以看到随着背景(红色)逐渐消失,文本丢失了填充和边框半径。
我该如何解决这两个问题?非常感谢。
【问题讨论】:
-
一个 ID 只能使用一次,但是你可以通过 class="class1name class2name" 拥有多个类
-
@HarrisJT 请查看更新的代码以获得替代解决方案。