1. 怎么让图片不变形?

一般我们使用图片都是用img标签,正常情况下不会有什么问题。但是如果在宽高都需要限制,客户也没有专门的运营人员或者不按要求上传图片的时候,很可能会出现上图左边的情况。然后客户电话就来了,你们这做的什么鬼,图片都是变形的啊,是不是有一万头羊驼飘过的感觉。在小的外包公司待过的应该懂。。。

这里提供一种处理图片的方式,可以考虑使用背景图片的方式引入图片。利用background属性以及CSS3新增的background-size处理。

2. 代码怎么写呢?

  <!-- img标签的方式使用图片 -->
  <div class="picture-wrap">
    <img class="picture" src="../normal/image/one-piece-luffy.jpg" alt="one-piece-luffy">
  </div>
  <!-- 背景图片的方式使用图片 -->
  <div class="my-picture" style="background-image: url(../normal/image/one-piece-luffy.jpg);"></div>
  <style>
    .picture-wrap {
      float: left;
    }

    .picture-wrap .picture {
      display: block;
      width: 300px;
      height: 200px;
    }

    .my-picture {
      float: left;
      width: 300px; /* 可以使用百分比 */
      padding-bottom: 200px; /* 可以使用百分比 */
      background-size: cover;
      background-position: center center;
      background-repeat: no-repeat;
    }
  </style>

效果如上图右边所示,效果算不上完美,但至少比图片变形好多了。

3. 示例代码下载

可以复制以上代码运行查看使用效果,也可以到GitHub: https://github.com/Jackyyans/code123下载,更多示例将会持续更新,欢迎关注。


代码123
25 声望1 粉丝

这个代码怎么写?