Css的vertical-align属性使用场景:经常用于设置图片或者表单(行内块元素)和文字垂直对齐。
官方解释:用于设置一个元素的垂直对齐方式,但是它只针对于行内元素或者行内块元素有效。
Vertical-align:baseline | top | middle | bottom
<!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>利用vertical-align实现图片文字垂直居中对齐</title><style>img {width: 50px;/* 让图片和文字垂直居中 */vertical-align: middle;}</style></head><body><img src="images/黄景瑜.jpg" alt="">i like him</body></html>
图片、表单都属于行内块元素,默认的vertical-align是基线对齐。
此时可以给图片、表单这些行内块元素的vertical-align属性设置为middle就可以让文字和图片垂直居中对齐了。
解决图片底部默认空白缝隙问题:
Bug:图片底侧会有一个空白缝隙,原因是行内块元素会和文字的基线对齐
主要解决方法有两种:
1 给图片添加vertical-align:middle | top | bottom等(推荐使用)
2 把图片转换为块级元素 display:block;
<!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>图片底侧空白缝隙解决方案</title><style>img {width: 100px;vertical-align: bottom;}div {border: 2px solid pink;}</style></head><body><div><img src="images/黄景瑜.jpg" alt=""></div></body></html>