搜索
查看: 14025|回复: 0

[网站] 图片宽度超出div,css控制图片不改变原大小情况居中显示,图片超出div部分隐藏

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。
  D/ U+ b( ]5 O( Z. y5 f( _/ S1 J  x- g4 h3 _5 J5 ]; T1 |
  实现原理:
: k. [/ R( {& U0 }( |( A  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。
) T6 L# ]( J; d  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:+ f2 c8 F  b( h7 r
  1. <style>1 z" _" m  T- Q+ h
  2. #bn {6 ]. b* r2 l. f1 c' q+ o
  3.   background-color:#FF0000;
    ' Q& z4 {$ f8 `. g0 y
  4.   width: 100%;
      I/ j- u/ b8 Q1 {
  5.   height:500px;( P$ `& O7 R  D7 H
  6.   overflow: hidden;
    : Z- ?# h0 V+ D% K4 ~# i
  7. }
    . ^; w( T' y/ q7 p' a) i2 x& M2 s( h
  8. #bn .img
    8 l) q) W" j$ |1 E9 d4 F1 u' C
  9. {
    7 l- o" o! n) J) h# n* D+ ?
  10.   width:1920px;
    + p- V- Z+ f/ L  }( _* Z
  11.   margin:0 calc(50% - 960px);3 m; `6 d7 O# R1 @0 |. E
  12. }
    9 X( A0 E8 v) b$ A" d+ F+ d" u
  13. </style>
    ; t7 i8 X' A2 Y$ P( O

  14. . {3 T3 `/ d/ a8 T
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码

0 ~1 ~+ _7 E; K( W7 H( ]5 L7 \
1 Z. K. h0 v) ?! A- ?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

热议作品
精华帖子排行
精彩推荐

虾皮社区,成立十年了!

站长自己也搞不懂想做个什么,反正就是一直在努力的做!

Copyright © 2007-2019 xp6.org Powered by Discuz

QQ|Archiver|手机版|小黑屋|虾皮社区 鲁公网安备 37021102000261号 |网站地图
返回顶部 返回列表