我有一行图像,每个图像都包含在一个链接中。
我希望当我将鼠标悬停时,每个图像周围都会出现虚线轮廓。
问题是,除了最后一张图像之外,RHS 上的轮廓都缺失了。
就好像图像与左侧图像的轮廓重叠。
当我悬停时,是否可以在所有 4 边上显示轮廓?
(我需要图像相互对接而没有间隙。)
我在 FF14、chrome、IE9 上尝试过这个。
最简单的方法是将
position: relative
分配给 a
元素,然后增加 z-index
的 a > img:hover
(而不是对 a:hover
进行样式化:
a > img {
position: relative;
}
a > img:hover {
outline: 3px dotted blue;
z-index: 3000;
}
你可以做的是将每个图像边框设置为 1px 实线,无论背景颜色是什么,然后在
img:hover
上将边框设置为你想要的。这是我正在谈论的工作 jsFiddle:这是一个简单的代码片段
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.box{
border: 3px solid #0A5C36;
padding: 2px;
float: left;
height: 30px;
width: 100px;
position: relative;
}
#box2{
outline: 2px dotted red;
z-index: 2;
}
#box1{
z-index: 1;
}
#box3{
z-index: 1;
}
</style>
</head>
<body>
<div id="box1" class="box"></div>
<div id="box2" class="box"></div>
<div id="box3" class="box"></div>
</body>
</html>