JS与CSS实现图片垂直居中显示的方案

作者:窗边听雨

时间:2026-10-27

浏览:227

本文介绍如何在固定宽度但高度不固定的容器中,仅显示图片垂直居中的部分。通过CSS设置overflow: hidden隐藏溢出内容,并结合JavaScript在图片加载完成后动态计算并设置margin-top和margin-left,实现图片在容器内的垂直与水平居中显示效果。

文章目录

图片垂直居中显示需求

在一个Div中显示Img,img的宽和Div相同,但高不固定,要求只显示Img垂直居中的部分。



示例:


图片垂直居中显示需求 

原图:


图片垂直居中显示需求

代码实现方案

代码实现:


代码如下:

 
<div style="width: 190px; height: 100px; overflow: hidden;">
<img src="http://beijing.timeoutcn.com/UserFiles/Images/2013-10-21/20131021104840077cover-22-1.jpg" width="190px" style="vertical-align: middle;"
onload="this.style.marginTop = (parseInt(this.parentNode.style.height) - this.height)/2 + 'px';this.style.marginLeft = (parseInt(this.parentNode.style.width) - this.width) /2 + 'px'" />
</div>

点击下载源文件

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章