为了账号安全,请及时绑定邮箱和手机立即绑定

怎样用css控制图片自适应大小?

怎样用css控制图片自适应大小?

守候你守候我 2019-04-04 12:02:03
怎样用css控制图片自适应大小?
查看完整描述

3 回答

?
冉冉说

TA贡献1877条经验 获得超1个赞


1

2

3

4

5

6

img{

  width:auto;

  height:auto;

  max-width:100%;

  max-height:100%;

}

这样可以使图片自适应容器的大小,但前提是图片所在的容器自身有一定的尺寸

 


查看完整回答
反对 回复 2019-04-05
?
森林海

TA贡献2011条经验 获得超2个赞

用CSS是无法很好的控制图片自适应的,因为通常页面放大缩小只是横向的变化,而高度是不变或者相对不变的,而图片想自适应必须设定一个百分比的宽度和高度,当只有横向变化的时候,图片当然可以自动的变化自适应,但相应的图片也会变形,如果无关紧要的话可以这么弄,但如果图片是展示性的图片时变形就会很难受,绝对不能这么做!
不过可以用js控制

查看完整回答
反对 回复 2019-04-05
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

要控制图片的大小,必须得先知道这张图片是以什么形式展现的:
1.<img>导入

2.background-image.

就只有这2种方法,即使是用JS或者其他语言来控制,也是万变不离其宗,这两种方法就是本质。
对于第一种(<img>),控制大小可以通过外框设置宽度,然后img用100%来适应外框(这样子,图片会根据width来自动调整图片,如果长、宽都设死了,那么图片一般都会出现变形),当然纵向也是同理可以执行的。

第二种的话(background-image);可以通过:

background-size来自适应大小。样式有4个属性:
length:
设置背景图像的高度和宽度。
第一个值设置宽度,第二个值设置高度。
如果只设置一个值,则第二个值会被设置为 "auto"。
测试
percentage:
以父元素的百分比来设置背景图像的宽度和高度。
第一个值设置宽度,第二个值设置高度。
如果只设置一个值,则第二个值会被设置为 "auto"。
测试
cover
背景图像扩展至足够大,以使背景图像完全覆盖背景区域。
背景图像的某些部分也许无法显示在背景定位区域中。
测试
contain:
把图像图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域。

 


查看完整回答
反对 回复 2019-04-05
  • 3 回答
  • 0 关注
  • 2977 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信