【发布时间】:2015-06-14 03:17:18
【问题描述】:
我如何拥有一张图片,无论是纵向还是横向:
- 水平和垂直居中响应(在调整浏览器窗口大小时保持居中)
- 占据浏览器窗口的固定部分,响应式缩放
- 在调整浏览器窗口大小时保留纵横比
【问题讨论】:
标签: html css image responsive-design
我如何拥有一张图片,无论是纵向还是横向:
【问题讨论】:
标签: html css image responsive-design
这是一个仅使用基本 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"/>
-->
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;
}
【讨论】:
height: 100%; width: 100%; object-fit: contain; 解决了它,但是是的,它是 CSS4 规范。不过,浏览器支持很广泛。