调整图像大小以适应div容器
如何自动调整大图像的大小,使其适合宽度较小的div容器,同时保持其宽高比?
例如:stackoverflow.com - 当图像插入到编辑器面板并且图像太大而无法放入页面时,图像会自动调整大小。
不要将明确的宽度或高度应用于图像标签。 相反,给它:
max-width:100%;
max-height:100%;
另外, height: auto;
如果你只想指定一个宽度。
例如:http://jsfiddle.net/xwrvxser/1/
img {
max-width: 100%;
max-height: 100%;
}
.portrait {
height: 80px;
width: 30px;
}
.landscape {
height: 30px;
width: 80px;
}
.square {
height: 75px;
width: 75px;
}
Portrait Div
<div class="portrait">
<img src="http://i.stack.imgur.com/xkF9Q.jpg">
</div>
Landscape Div
<div class="landscape">
<img src="http://i.stack.imgur.com/xkF9Q.jpg">
</div>
Square Div
<div class="square">
<img src="http://i.stack.imgur.com/xkF9Q.jpg">
</div>
https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
原来还有另一种方法可以做到这一点。
<img style='height: 100%; width: 100%; object-fit: contain'/>
会做这项工作。 这是CSS3的东西。
小提琴:http://jsfiddle.net/mbHB4/7364/
目前没有办法以确定的方式正确地做到这一点,使用固定大小的图像,如JPEG或PNG文件。
要按比例调整图像大小,您必须将高度或宽度设置为“100%”,但不能同时设置两者。 如果您将这两个设置为“100%”,您的图像将被拉伸。
选择是否进行高度或宽度取决于您的图像和容器尺寸:
height="100%"
。 width="100%"
。 如果你的图像是一个SVG,这是一个可变大小的矢量图像格式,你可以扩大以适应容器自动发生。
您只需确保SVG文件没有在<svg>
标记中设置的这些属性:
height
width
viewbox
大多数矢量绘图程序会在导出SVG文件时设置这些属性,因此每次导出时都必须手动编辑文件,或者编写脚本来执行此操作。
链接地址: http://www.djcxy.com/p/41387.html