搜索
查看: 13177|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。, {/ {8 @5 D) z2 v& v) Z, S# r. m
9 d: d' F- l5 ?* ]( |
  实现原理:
% o# x: {- I4 Z8 n- n* s  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。
- r8 n4 H" o* g( m. n4 B, ^  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:
& q) A2 c! w+ y( F* w  u
  1. <style>
    - R' z# F7 _1 A6 x; E
  2. #bn {
    $ s1 U) k# l9 K5 k+ B
  3.   background-color:#FF0000;1 X) h" _# ?2 }" h$ T
  4.   width: 100%;
    : `# {6 ]% y# {- @: \& w# F* n
  5.   height:500px;+ i: l' S9 d& [9 Q8 S/ F3 |7 a. B
  6.   overflow: hidden;! ]* a# b& }) a  |; w9 k
  7. }
    & y) F' ]) w/ f$ k. v
  8. #bn .img
    % {2 o4 ?7 S. s" s
  9. {5 d: A* ?; N1 [2 _
  10.   width:1920px;0 ^: S( t8 m; a7 \) E. h5 s8 d
  11.   margin:0 calc(50% - 960px);
    6 U1 `" M2 k& L3 L/ d
  12. }" Z% ^: q3 e# w2 `4 E9 m
  13. </style>( i% {# W; c# M$ b$ {% k! x& K3 o
  14. 1 ?8 T; ^2 s1 }1 H" |
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码

1 |& [8 i2 F- Y% s. \/ W
; C4 O$ z9 B5 y  F7 z" K/ o- \6 Q9 C
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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