我想在懸停的鏈接周圍放置一個邊框,並且樣式適用於它,但是當我將它懸停時,它會跳轉(元素跳轉)...我該怎麼辦? 代碼:css鏈接元素跳轉懸停
.navigation li:hover {
border: 1px solid #ccc;
}
我想在懸停的鏈接周圍放置一個邊框,並且樣式適用於它,但是當我將它懸停時,它會跳轉(元素跳轉)...我該怎麼辦? 代碼:css鏈接元素跳轉懸停
.navigation li:hover {
border: 1px solid #ccc;
}
你「跳」是由邊界1px的高度,使你的李舉動引起
您可以使用
.navigation li:hover {
border-color: #ccc;
}
.navigation li {
border: 1px solid #<parentBackgroundColor/transparent>;
}
代替。通過這種方式,邊界從一開始就在這裏,所以沒有懸停跳躍,並且它是不可見的,因爲它與父容器的顏色相同或是透明的。
解決方案的+1 - 但對答案稍作修改 - 按照@Clement Harreman的建議在.navigation li中設置邊框,但在.navigation li:hover中,只更改邊框顏色。它有助於繼承。 – 2011-04-07 09:28:30
同意,編輯完成。 – 2011-04-07 12:17:17
.navigation li {
border: 1px solid transparent;
}
您可以添加一個透明border
,當你不徘徊,那麼它不會跳。
或者,您可以刪除共有的元素周圍2px
垂直padding
,例如:
.navigation li {
padding: 10px
}
.navigation li:hover {
padding: 9px;
border: 1px solid #ccc;
}
@Laura Rafferty:原始答案的CSS是正確的。如果一個元素當前擁有'padding:10px',設置(懸停時)'padding:9px'會將'padding-top'從'10px'設置爲'9px','padding-bottom'從'10px'設置爲'9px' - 合併減少2px。 – thirtydot 2017-04-10 23:57:41
因爲添加邊框而跳躍。從元素左邊出現左邊框,元素右邊爲1 px – 2011-04-07 09:11:10