搜索
查看: 13452|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。
# X* C* h  J, R6 T- y$ I" T
0 W* }8 E8 a5 B5 \& E  实现原理:0 W- D; m* j. q9 T; o6 d% ^
  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。0 \, t  S9 x7 G; T! x6 U8 O; J
  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:* Q  e4 f2 O# \6 r" ?" N
  1. <style>$ {, E: F7 \) e3 n& o! p. P: f. q- L
  2. #bn {7 j# A" o& |  ?+ A8 V: g
  3.   background-color:#FF0000;
    " R8 c* O; I3 v3 G
  4.   width: 100%;
    8 L# Y' u' Y. l9 w  Z: D
  5.   height:500px;
    2 d- |( ]( g1 x
  6.   overflow: hidden;
    ) a* n1 u* f7 c( @' Z9 z4 a
  7. }
    8 ?( ^9 W% V& e8 D- E5 T
  8. #bn .img
    ) Y% t+ r+ L! {; |0 t0 W
  9. {' p! e8 Q. X# P* [1 ]! v- v. f
  10.   width:1920px;( M4 V$ q; S5 y1 r  y# A7 Z0 R9 _
  11.   margin:0 calc(50% - 960px);
    9 ^2 D. I( X1 j+ T- k
  12. }
    7 g; C& G' X: R7 ?3 R: }0 x- L4 T, b/ Y
  13. </style>" S) v: V" ?* C* Q; f1 I
  14. , o2 n, l4 m& N
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码
9 X2 d/ ~! ^/ {  g8 ^  b

# }* Z3 X, l# U; b; ]
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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