html - 图片如何居中显示,小框大图

标签 html css

页面中有一个长框架(大约 3.5:1 宽高比)。 大多数显示的照片都是 4:3,更大且宽高比不合适。

长镜框是客户真正想要的,暂时没打算改镜框尺寸。

目前它的显示方式是“宽度调整到框架宽度,然后从照片的顶部填充到框架的底部”。 这样一来,几乎一半的照片都是从下面剪下来的,看起来很糟糕。

我知道在不破坏照片的情况下几乎不可能同时适应宽度和高度。

所以我的计划是尝试从中心显示部分照片。

我应该如何编写这个 CSS?

注意:这里的“frame”是一个“div”

enter image description here

最佳答案

如果您想使用 img 元素,一个选项是使用 positiontransform 使 img 在框架上居中,同时保持比例像这样填充:

.framed {
  position: relative;
  width: 100%;
  /*Proportion 3.5:1 with the padding*/
  padding-top: 28.5%;
  overflow:hidden;
}
.framed img {
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
<h5>Original Image</h5>
<img src="http://placekitten.com/200" />

<h5>Framed Image</h5>
<div class="framed">
  <img src="http://placekitten.com/200" />
</div>

关于html - 图片如何居中显示,小框大图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40640183/

相关文章:

javascript - js验证同时发送消息

html - 是否可以在 CSS 中禁用字体平滑?

html - IE11 - border-radius 和 box-shadow 一起导致问题

javascript - 如何在没有键盘的情况下使用javascript制作键盘事件

html - 图像中的文本区域

javascript - 用 jquery 动画排列 block

html - 不明白如何编辑风格怪异的 <ul> 导航栏

html - 如何让 DIV 的背景颜色铺满整个屏幕

css - 如何在 CSS 网格中滚动?

html - 刚刚开始掌握 CSS。有人能告诉我为什么我的内容 div 稍微伸出右边缘吗?