搜索
查看: 13571|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。% b2 o; E) Z; j5 c( p
: v4 _1 ?6 q: ~0 W( E: a  a
  实现原理:
) f9 Y/ `  n. q$ A' q3 E* Y  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。
+ t% r1 M. P7 E4 m! G) J  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:5 D8 |5 x7 N0 Q, z& |, ]
  1. <style>
    ! F3 {  i, H: s
  2. #bn {( q. w4 l3 g5 G
  3.   background-color:#FF0000;5 c$ b% l) F, W' ~! `  u% J9 H
  4.   width: 100%;9 `6 K: u- }# o( f5 E( g7 |% R
  5.   height:500px;
    5 [" p. R2 M& A
  6.   overflow: hidden;2 E. X% E6 H- e8 Z8 @, a  t  y) j* _7 I
  7. }
    7 ^$ n2 z# j! X  X& T9 k1 ]
  8. #bn .img+ j" m$ W5 L. ^) O# K- [+ R. b5 k' k
  9. {
    - i/ l+ J! l) l) i; ~0 F4 o2 N# d
  10.   width:1920px;
    ! l1 s' W. R5 D
  11.   margin:0 calc(50% - 960px);
    * v+ Q8 x) J6 W% I% q5 d/ C
  12. }
    2 o2 Z& N: A7 l: R' h0 k
  13. </style>
    4 N6 g% R% K/ Z0 \# {
  14. $ \( t7 z" }8 I; x9 f+ z! z+ M
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码

' g5 {: T" \* n. L/ z* ~
  j/ k! O9 r1 c4 b( P# |+ j
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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