搜索
查看: 13865|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。
# ^; S$ y! k9 U/ U% @9 v8 v8 `6 O* Z. a: u6 L* w: C, z
  实现原理:1 D+ ?' u0 g. O/ R9 S
  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。% y/ H8 g. |/ ]  M( L- ?/ M
  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:$ [& S' b0 l5 q
  1. <style>8 w+ y! O. J9 k& O% s3 ]
  2. #bn {
      u( {: Z0 c3 a2 V
  3.   background-color:#FF0000;
    / ~2 S0 p; u9 D! K" {# D
  4.   width: 100%;3 M7 _! f/ U' T- v. S2 V( T' n
  5.   height:500px;
    & `2 e' C5 S( C0 ^2 n+ K( A
  6.   overflow: hidden;
    1 w: K; Q; A* Y: k% Q; p
  7. }( F& q8 g3 N! ~# I
  8. #bn .img6 x, t: D* b+ y
  9. {
    * c/ h; y4 c2 m6 [. m
  10.   width:1920px;  ^" U% y5 n1 t- o! ]0 c& H$ u4 k; i
  11.   margin:0 calc(50% - 960px);
    2 N% F- x8 g: H! D! P. o7 M; }% h
  12. }
    9 S1 R, J: d' d5 R; s
  13. </style>5 o# p+ e& L4 l" P3 ~/ f$ Z

  14. 8 }- X, i2 o' }, i9 @. q
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码

% [0 j1 ~, @0 H, O2 I2 x
# x0 `; _/ E. J2 R1 t6 Q
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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