我试图在悬停时在链接周围放置一个边框,并且样式适用于它,但是当我将鼠标悬停在它上面时它会跳跃(元素跳跃)...我该怎么办? 代码:
.navigation li:hover {
border: 1px solid #ccc;
}
答案 0 :(得分:14)
你'跳'是由边框的1px高度引起的,这使你的移动
您可以使用
.navigation li:hover {
border-color: #ccc;
}
.navigation li {
border: 1px solid #<parentBackgroundColor/transparent>;
}
代替。这样,边框从一开始就在这里,因此在悬停时没有跳跃,并且它是不可见的,因为它与父容器的颜色相同或是透明的。
答案 1 :(得分:8)
.navigation li {
border: 1px solid transparent;
}
您可以在不悬停时添加透明border
,然后不会跳转。
或者,您可以在元素周围删除总共2px
个垂直padding
,例如:
.navigation li {
padding: 10px
}
.navigation li:hover {
padding: 9px;
border: 1px solid #ccc;
}