javascript - 在完整的浏览器窗口中显示图像,但仅在图像太大时才按比例缩小

标签 javascript jquery css

我想在整个浏览器窗口居中显示图像。不过有几个条件。如果图像大小适合浏览器的客户区,则以其原始大小显示。如果图像比浏览器客户端窗口高或宽,则按比例缩小图像。最后,如果用户调整浏览器的大小,图像将缩小(如果太大),或者如果浏览器窗口超过图像大小,图像将缩放至不大于其原始大小。

我可以用 jQuery 完成所有这些,但我想知道是否可以单独使用 css 来完成?

编辑:

我得到的最接近的是:

https://jsfiddle.net/Deepview/o5vgo6du/

html

<div class="outerCont">   <img src="http://www.wonderslist.com/wp-content/uploads/2015/10/Doutzen-Kroes-Most-Beautiful-Dutch-Woman.jpg" /> </div>

CSS:

.outerCont {
  position: relative;
}

img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
   max-width: 100%;
    height: auto;
    width: auto;
}

但是图片没有垂直居中。

最佳答案

必须将以下内容添加到外部 div:

  width: 100vw;
  height: 100vh;

https://jsfiddle.net/Deepview/o5vgo6du/3/

关于javascript - 在完整的浏览器窗口中显示图像,但仅在图像太大时才按比例缩小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45631775/

相关文章:

javascript - 粗体在 Chrome/Firefox 中太粗了

html - 视差布局和 z-index

javascript - Laravel 回显 : is it possible to listen to all events instead of a specific one?

JavaScript:在 `for loop` 语句中工作的 `if` 在 `ternary` 语句中不起作用?为什么?

Javascript时间转换正则表达式

javascript - 使 slider divs 具有相同的高度。 AJAX 干扰了这个

javascript - 将 jQuery '.eq()' 与多个类一起使用

javascript - 保证不冒泡外

jquery index() 返回-1

height - 最小高度 Vs 高度