搜索
查看: 13685|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。
& z1 q) k/ {: `  R1 Y- F; h9 r, t  _1 I+ V
  实现原理:
" j+ b3 Y. a: ?  x9 X6 V  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。3 o3 ~. Z& X( R9 _- e% J6 j
  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:& g" c9 F; e( e; `5 e
  1. <style>
    & k  y# y' v2 q( x" D- x
  2. #bn {
    " }4 g3 j9 `9 J
  3.   background-color:#FF0000;0 M4 d/ C1 S1 V7 J" b- W" n# ~( Y% b  p
  4.   width: 100%;( q5 f! l( Z6 n) Y
  5.   height:500px;
    6 J; b  Q( i* K: \
  6.   overflow: hidden;3 a1 S: ^: R% v/ M. c9 e( B
  7. }
    3 e+ g3 U5 d2 F0 ^1 {0 \
  8. #bn .img
    4 }( N7 Q% I, e
  9. {) d/ ^3 ~( b5 |# ~
  10.   width:1920px;6 p5 d/ J" @+ b2 }6 x
  11.   margin:0 calc(50% - 960px);! g; V4 r* f; B0 y. a- G
  12. }
    + r! \9 t" M. w  m
  13. </style>; l6 W$ E! \& {. i/ B9 D5 c
  14. * k* [! n0 u' o; h! b1 `( i
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码
6 p3 U8 `5 C5 N" e# q
, H3 M, k" `" I& W6 H5 U/ f
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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