响应浏览器窗口(CSS)的适合度,比例和中心图像

Abh*_*Das 4 html css image responsive-design

无论肖像或风景如何,我如何拥有图像:

  • 水平和垂直响应中心(在浏览器窗口调整大小时保持居中)
  • 占据浏览器窗口的固定部分,响应缩放
  • 在调整浏览器窗口大小时保留宽高比

Abh*_*Das 11

这是一个满足上述所有内容而只需要基本CSS(不需要CSS3)的解决方案:

http://jsfiddle.net/dvidby0/sytj1uws/1/

HTML

<div class="container">
<!-- this is a landscape image-->
<img src="http://upload.wikimedia.org/wikipedia/commons/1/15/Cat_August_2010-4.jpg"/>
<!--or use this portrait image; still works
<img src="http://upload.wikimedia.org/wikipedia/commons/9/9d/Britishblue.jpg"/>
-->
Run Code Online (Sandbox Code Playgroud)

CSS

.container {
width: 80%;
height: 80%;
position: absolute;    
margin:auto;
top:0;
bottom:0;
left:0;
right:0;
background-color: #aaa;
}

img {
max-width: 100%;
max-height: 100%;  
position: absolute;
margin:auto;
top:0;
bottom:0;
left:0;
right:0;
}
Run Code Online (Sandbox Code Playgroud)

  • 几乎在那里,但当图像小于容器时,它不会放大图像。`高度:100%;宽度:100%;object-fit: contains;` 解决了这个问题,但是,是的,这是 CSS4 规范。不过,浏览器支持很广泛。 (2认同)