實現元素或圖片的上下、左右居中的三種方法
效果圖如下:
方法一:利用vertical-align屬性實現圖片上下居中
先設置父元素樣式text-align: center,實現圖片左右居中,給圖片添加一個同級的span標簽,設置寬度為零,高度100%,兩者都設置display: inline-block; vertical-align: middle,即可實現圖片上下居中,具體代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<title>圖片上下左右居中</title>
.box{
width: 400px;
height: 300px;
border: 1px #000 solid;
margin: 40px auto;
text-align: center;
}
.box img{
display: inline-block;
vertical-align: middle;
}
.box span{
width: 0;
height: 100%;
display: inline-block;
vertical-align: middle;
}
</style>
</head>
<body>
<span></span>
</div>
</body>
</html>
方法二:使用彈性盒實現,這種方法比上一種方法好操作
只需要給父元素添加display:flex(彈性盒),再給子元素設置margin: auto即可,具體代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<title>圖片上下左右居中</title>
.box{
width: 400px;
height: 300px;
border: 1px #000 solid;
margin: 40px auto;
display: flex;
}
.box img{
margin: auto;
}
</style>
</head>
<body>
</body>
</html>
方法三:使用定位使子元素在父元素內部垂直水平居中