消除img自带下间距
img是行内块元素,它有自带的3px的下边距,会与下面的元素有间隙 。
一、解决方法
1.img转换为块元素:display:block;
2.img外面包一个容器,如div,div高度和img高度一致即可
3.img添加vertical-align:top/bottom;不建议使用vertical-align:middle;
4.父元素字体大小为0:font-size:0;
5.如果父对象的宽、高固定,图片大小随父元素自适应,父元素设置: overflow:hidden;
6.img添加浮动:float:left/right;
二、举个栗子
在这里我只举例了一种解决方案,也就是上面的第三种方法。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
*{
margin: 0;
padding: 0;
}
img{
height: 500px;
vertical-align: top;
}
p{
height: 300px;
background-color: darkgoldenrod;
}
</style>
</head>
<body>
<img src="images/1.PNG" alt="">
<p></p>
</body>
</html>
默认情况:
img加上vertical-align: top;之后: