在完整浏览器窗口中显示图像,但只有在图像太大时缩小

时间:2017-08-11 09:36:21

标签: 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;
}

但是图像并没有垂直居中。

1 个答案:

答案 0 :(得分:1)

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

  width: 100vw;
  height: 100vh;

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