搜索
查看: 12460|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。
' g$ E: h; f% d2 X7 g- @9 A( a4 i- F: Q8 @0 `4 r+ u( {
  实现原理:7 c  F+ B# O7 N* w4 V/ ?3 E) V# @
  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。
, I; B# E" q9 g! N  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:
& T$ H% s  p6 W5 F+ u& c: d
  1. <style># P* `8 E) @, z5 y$ u6 Z
  2. #bn {
    2 {) X5 o. a1 l; @* G4 m1 c; S
  3.   background-color:#FF0000;
    # Y5 Q! K' ?  `; u' a/ Z
  4.   width: 100%;5 ~) i  q- C2 C) E( {( F
  5.   height:500px;
    3 s7 o) A& `9 i, L7 X7 s5 {5 F5 {
  6.   overflow: hidden;
    . y/ O% p; Z/ b- r) P  s5 o
  7. }
    5 l: a7 G/ }3 ~
  8. #bn .img. F3 x. v# D* M; |/ }6 q% h
  9. {  r. I3 X* H4 z5 @4 i
  10.   width:1920px;
    , M9 {# Y& ]' P# z  E7 s
  11.   margin:0 calc(50% - 960px);
    * w- g; G0 p, n
  12. }
      y* `8 y$ V) m7 ?9 i$ F4 v* `
  13. </style>
    8 n* f. t6 Z( |5 O2 B) }7 X% f
  14. & J* X% n3 E" z! o3 d
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码

: P0 g  G$ f. A3 Z  ^& \, \& O
9 G  z% n3 z& q6 R, S3 c
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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