搜索
查看: 13283|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。
$ {- k5 q  m$ T1 \* E+ u! x  ~* G+ L$ O3 P6 ?  p9 R
  实现原理:
! g! b- W6 [/ p! u  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。8 h6 g4 E6 Y! @: ^- W0 D7 D
  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:1 ^; o7 z3 @7 h, C3 `1 |- Y4 v2 M
  1. <style>
    : I4 e( V. p% A
  2. #bn {& l" X* F! U3 z; |
  3.   background-color:#FF0000;! n; \6 a# i; m! P3 H9 j
  4.   width: 100%;  ^- v+ O) G6 e& \, ~& \" J' k& h- u2 X
  5.   height:500px;
    ! V( N! h. T) X! A3 v. H2 o6 y
  6.   overflow: hidden;
      t& N' e5 B) ^" B- b1 N7 M, d
  7. }4 @( J  s! A) [  R) u
  8. #bn .img% r: \$ u9 \5 ~5 \  E2 k
  9. {8 Z( d4 C( A; _0 p
  10.   width:1920px;
    ! q+ Z- X4 s( ?
  11.   margin:0 calc(50% - 960px);
    0 b9 Z: U+ B0 k1 {
  12. }/ Y3 E8 c6 q4 P4 q8 D4 N
  13. </style>5 c# ~* S. k5 n7 o% j( I

  14. ! m* c1 Y2 X( g4 d
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码

4 [! v6 L* J1 X5 Y" i; ]6 }: I& }' `6 ], S4 H* c9 o  d& g! R
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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