搜索
查看: 13074|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。: B+ W; X1 W2 G+ k2 F
3 _6 @$ e4 i. V% F" R6 u" I' K1 P
  实现原理:8 s9 k5 Y9 ~( V  d1 {  r$ K4 X
  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。! i) h- i5 ?* \$ Q/ r9 ~$ s8 \
  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:
( V3 s; T+ J( o7 }6 W% b/ b* v% i
  1. <style>
    ; C; d/ g0 `$ C9 Y! X9 N
  2. #bn {! q; \6 h7 s+ V" H* Y
  3.   background-color:#FF0000;- S% m3 P  d' P" t7 l
  4.   width: 100%;
    3 s& O1 \6 O8 E# Q& r
  5.   height:500px;
    : I- b/ p- y- y
  6.   overflow: hidden;. t* V3 m* p5 o( ]/ U
  7. }
    " V' P+ B3 E; B- `& Y, _3 v5 ~
  8. #bn .img
    ) K% k. F6 u3 @& u' P" M$ J
  9. {2 }9 J* C4 l* u/ k5 C  U
  10.   width:1920px;- o, J+ V' m) G& c1 Y% S
  11.   margin:0 calc(50% - 960px);
    4 l6 n* @& r. i6 M% \
  12. }; R: ^8 S% k, Y% ^" z; L
  13. </style>; v; h  `& L9 E7 _7 B
  14. : H, |8 e6 t: O
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码

* ^3 n' Z% s3 x+ o5 d, i  X  C/ j* x4 M
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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