总结了一个不规则图片不变形的解决方案:
注:先写一个长 300px 宽 200px 带边框的 div ,图片接近方形,实现图片正常显示不变形。
通过背景图的 background-position 属性,可以使图片居中显示。国外一些网站有看到类似的案例,简单好 *** 作。
这样可以显示完整的图片,不变形:
若要图片填满容器,可以将 background-size 属性改为 100% auto :
如下图:
同样 background-size 的 contain (完整显示)和 cover (填充)属性也能起到相同的效果。
object-fit CSS 属性指定可替换元素的内容应该如何适应到其使用的高度和宽度确定的框,不支持IE。
可用属性:
fill 不保持纵横比缩放图片,使图片完全适应
contain 保持纵横比缩放图片,使图片的长边能完全显示出来
cover 保持纵横比缩放图片,只保证图片的短边能完全显示出来
none 保持图片宽高不变
scale-down 当图片实际宽高小于所设置的图片宽高时,显示效果与none一致;否则,显示效果与contain一致
inherit 继承
initial 默认值
unset 继承父元素,若父元素没有属性则显示默认值
CSS:
该方法也可以实现以上两种方法的效果。
以容器宽 200px 高 300px ,图片为方形为例:
设置 width: 100% 为图片完整显示,多出部分留白。
设置 height: 100% 为图片全部填充,这时候需要给图片的容器添加 overflow: hidden 属性,防止图片超出。
图片等比例缩放,多余部分,还有就是要考虑IE兼容问题,可以在手机端项目中使用。
js 方法应该比较通用,可以兼容多版本浏览器。
也可以兼容多版本浏览器,需要 jQuery 加持。
图片等比例缩放,多余部分空白填补:
img固定宽度和高度,不规则图片变形问题的解决方法-HTML笔记-w3h5-Web前端开发资源网
这个也不是拉长,你的logo肯定是张图片,放在指定位置就行了,然后将装这个图片的div的宽度写成需要的长度,比如就图一那么宽,然后你用吸取工具吸取到背景的蓝色,将该div盒子的背景色改成这个颜色就行了。一行代码可解决background-size:cover
html手册上的:
注意:如果打算使用背景图像,应该牢记:
这个图像会使页面加载时间过长吗?小技巧:图像文件的容量尽量不要超过10K。
这个图像跟页面上其他图像协调吗?
这个图像跟页面上的文字颜色协调吗?
这个图像平铺了以后看起来还可以吗?
这个图像吸引了文字的注意力,喧宾夺主了吗?
一般的网站很少使用背景图像。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)