【移动端布局】让图片保持等比例缩放 (实用)

短命女 2022-04-17 03:39 742阅读 0赞

原文出处:https://www.aliyun.com/jiaocheng/639739.html

摘要:

前端写页面布局时,图片变形是个很令人头疼的问题,手机屏幕分辨率不一样,出来的效果就不一样,下面的代码可以解决这些问题,保持图片在不同分辨率下面也可以让图片不变形

  • 1、首先不能给外层列表定高度,用margin或者padding撑开.album-li-pic{height:0;overflow:hidden;margin:0;padding-bottom:100%;}
  • 2、img用定位的方式布局,width设置成为100%.album-li-picimg{display:block;

前端写页面布局时,图片变形是个很令人头疼的问题,手机屏幕分辨率不一样,出来的效果就不一样,下面的代码可以解决这些问题,保持图片在不同分辨率下面也可以让图片不变形

1、首先不能给外层列表定高度,用margin或者padding撑开

  1. .album-li-pic{
  2. height: 0;
  3. overflow: hidden;
  4. margin: 0;
  5. padding-bottom: 100%;
  6. }

2、img用定位的方式布局,width设置成为100%

  1. .album-li-pic img{
  2. display: block;
  3. position: absolute;
  4. width: 100%;
  5. top: 0;
  6. bottom: 0;
  7. }

html代码如下

  1. <li class="album-li">
  2. <a>
  3. <div class="album-li-pic">
  4. <img src="" class="album-pic" />
  5. </div>
  6. </a>
  7. </li>

如果图片不是正方形的,可以调整padding-bottom来实现,比如图片要求4:3,那么padding-bottom就设置为75%就行了

原理:通过margin, padding 的百分比数值计算,(按照规定,margin, padding 的百分比数值是相对 父元素宽度 的宽度计算的),然后利用百分比数值的 padding-bottom 属性撑开容器内部空间,然后让img充满整个父级就OK了

用谷歌浏览器模拟手机效果如下:

【移动端布局】让图片保持等比例缩放【原创】\_HTML/CSS

放大分辨率再看:

【移动端布局】让图片保持等比例缩放【原创】\_HTML/CSS

这样就达到我们预期的效果了,在不同分辨率下图片始终不会变形

发表评论

表情:
评论列表 (有 0 条评论,742人围观)

还没有评论,来说两句吧...

相关阅读

    相关 js比例图片

    有时网页很容易被大图片撑开,下面的js小技巧可以用来解决这个问题。 js获得图片大小和容器的大小进行比较然后重新设置图片的显示大小,示例如下: Code: