CSS图片剪裁与原比例压缩或放大

在前端网页制作的过程中,图片的处理往往比较头疼,当然不考虑你有很给力的美工后援的情况下。以下将对一些常见的CSS图片处理需求情况进行分析:

1、一张图片要放在固定宽高的内容块中,并填充满整个内容块(看起来整齐划一)

我们假设要把一张大小为1920*1200的图片放在400*400的内容块中,由于这时图片是长大于宽的,为了保证图片看起来不被压缩,可以固定宽度,从图片中间向左右两侧裁剪以保留图片的核心内容。如下图所示(左图为原图,右图则为实际显示在400*400内容内的图片内容)

HTML代码:


  
  
  1. <div class="cover">
  2. <img src="img/cover.jpg"/>
  3. </div>
CSS代码:


  
  
  1. img
  2. {
  3. height: 100%;
  4. width: auto;
  5. left: 50%;
  6. position: relative;
  7. -webkit-transform: translateX(-50%);
  8. -ms-transform: translateX(-50%);
  9. -moz-transform: translateX(-50%);
  10. }
  11. .cover
  12. {
  13. margin: 100px auto;
  14. width: 400px;
  15. height: 400px;
  16. overflow: hidden;
  17. border: 1px solid cornflowerblue;
  18. position: relative;
  19. }

若原始图片大小为683*984,即长小于宽,为了保证图片看起来不被压缩,可以固定长度,从图片中间向上下两端裁剪以保留图片的核心内容。如下图所示(左图为原图,右图则为实际显示在400*400内容内的图片内容)



CSS代码:


  
  
  1. img
  2. {
  3. width: 100%;
  4. height: auto;
  5. top: 50%;
  6. -webkit-transform: translateY(-50%);
  7. -ms-transform: translateY(-50%);
  8. -moz-transform: translateY(-50%);
  9. position: relative;
  10. }


2、网站背景图片符合响应式布局,从台式机到手机,显示面积变小,从中间向四周截取部分作为背景显示。


CSS代码:


  
  
  1. .jumbotron
  2. {
  3. padding: 0;
  4. background-image: url(../img/cover.jpg);
  5. background-position: center center;
  6. }
重点是将图片设置为背景图片。

PS:以后遇到更多的CSS图片处理问题还会继续更新~小伙伴们敬请期待 :)








猜你喜欢

转载自blog.csdn.net/qq_40147863/article/details/83994371