jquery - 将图像放在 div 元素中并保持图像比例

标签 jquery html css

HTML :

<div id="presentationViewContainer">
    <img id="presentationView" />
</div>

CSS:

#presentationViewContainer {
  display: none;
  position: absolute;
  width: 530px;
  top: 106px;
  left: 28px;
  box-shadow: 0px 0px 5px 4px rgb(75, 80, 86);
}

#presentationView {
  max-height:100%;
  max-width:100%;
}

如果图像处于纵向模式,则实际结果::图像高度太大..

enter image description here

图像处于纵向模式时的预期结果:图像应位于红色方 block 上以查看整个图像:

enter image description here

如果图像是横向的实际结果:图像应该居中:

enter image description here

图像处于横向模式时的预期结果:图像应居中:

enter image description here

JSFIDDLE :

纵向模式:https://jsfiddle.net/8e1p351u/ 对于横向模式:https://jsfiddle.net/n9b8q82o/

更新:

这是现在的实际结果:

如何设置图片在红色方 block 中的位置?

enter image description here

最佳答案

使用 css3 新规则这很容易:

.container img{
  width: 100%;
  height: auto;
}
@supports(object-fit: cover){
    .container img{
      height: 100%;
      object-fit: cover;
      object-position: center center;
    }
}

如果您担心旧浏览器,在很多情况下 flexbox 对您或翻译方法都无济于事。如果这对您来说非常重要,您可以为图像指定尺寸并执行以下操作:

.container img{
  width: 400px;
  height: 300px;
  margin: -150px 0 0 -200px;
  position: absolute;
  top:50%;
  left:50%;
}

关于jquery - 将图像放在 div 元素中并保持图像比例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30500579/

相关文章:

javascript - 按钮不响应 chrome/safari 中的 onclick,但在堆栈溢出时处理代码片段,为什么?

javascript - 对齐屏幕 ionic html右下角的按钮

jquery - 数据表 PDF 导出 (pdfmake) : how to prevent breaking rows in page breaks?

javascript - 为什么 jquery .click() 在添加 [0] 时对 href 起作用?

javascript - 动态添加标签到正文

html - 将 html 转换为 pdf - 分页符拆分文本

jquery - 在右侧滚动圆圈条?

javascript - 当 page.html 位于另一个文件夹中时,幻灯片菜单停止工作

php - css样式和对齐问题

javascript - 按部分更改事件导航的下划线