多行图片hover加边框会把下面的图片挤到别处的如何解决方法

人生有起有落,有起有伏,无论你现在是在人生的顶峰,还是在人生的低谷,都是人生必经的一个过程。站在山峰的你,回头看看曾经在山谷的你,是多么的发奋图强,自强不息。所有的好事不是不来,而是在等红绿灯的路上。
问题:

遇到多行多列排列的图片时,hover上去加边框会把下面的图片挤到别处

============================================================

注意:

IE11以下浏览器加载图片会默认给它加一个1px的边框

解决方法:对图片设置border:none

=============================================================

hover加边框解决方案:

原先:
复制代码
代码如下:

<li>
<img />
<h3></h3>
<p></p>
</li>

1. 对元素设置透明边框(推荐):
复制代码
代码如下:

li{
border:2px solid transparent;
}
li:hover{
border:2px solid red;
}

2. 对元素外再包裹一层div

更改后:
复制代码
代码如下:

<li>
<div>
<img />
<h3></h3>
<p></p>
</div>
</li>

样式:
复制代码
代码如下:

li{
wdith:468px;
}
div{
width:468px;
margin:2px;
padding:10px;
background-color:#fff;
}
div :hover{
margin:0;
border:2px solid red;
}

另外:

使用outline IE 7、8 不支持。

但它是显示在元素上面不会对元素加边框。不考虑IE兼容的可以直接用outline代替border

本文多行图片hover加边框会把下面的图片挤到别处的如何解决方法到此结束。那些曾经以为念念不忘的事情就在我们念念不忘的过程里,被我们遗忘了。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
css中:last-child不生效的如何解决方法

css如何解决浮动导致父元素高度坍塌的几种方法

详解CSS-opacity子元素继承父元素透明度的如何解决方法

详解flex布局下图片变形的如何解决方法

css3 flex如何实现div内容水平垂直居中的几种方法