搜索
查看: 12459|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。: I5 W) l% `! J. I

5 X4 ?/ C0 _4 C- L4 K* h  实现原理:
) l7 M" A. ^* t4 Q9 ^, i+ T( a$ e  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。
: Q) X7 ~3 V" F- i% p- H% q. j" ]% X) u  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:) W+ _( e# N# u( k& e% T
  1. <style>
    ! C% K/ I- }0 h9 E( B7 T
  2. #bn {# b( v$ D9 t( M+ E! G. q
  3.   background-color:#FF0000;
    ! i0 O* y3 g9 E) X) Q0 v
  4.   width: 100%;; Y; e2 s! T* H% u8 o9 o
  5.   height:500px;
    4 \5 n" l- b' R/ D. h! Q$ J, W
  6.   overflow: hidden;6 |! W$ `3 v! O4 {
  7. }; B# D, _; u* Z. i
  8. #bn .img8 L) V( C' D  n+ A3 b
  9. {
    5 v! t# A; e! i- f; f
  10.   width:1920px;! i* d3 I5 ]+ S& ]
  11.   margin:0 calc(50% - 960px);8 `1 V  w0 }: |4 r
  12. }
    2 f7 }& i  X$ N6 T( @- ~1 ]+ G
  13. </style>
    + I  s2 s. V. y, M, W- k8 |4 ^

  14. / S  v/ t6 x) P- p" A. ~2 E% Q
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码
  E  s/ F. H8 F# y& R7 J

; _. i- O2 a! P) q4 [2 x
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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