搜索
查看: 13173|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。
. Y) t2 s6 Y2 k) C" G/ Z' ^( _. e
  实现原理:
9 ~9 s  C; b# m7 A& p6 F: ~  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。
$ J7 U  c/ W# v) @, O  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:# C: F5 V4 k4 ]4 j
  1. <style>1 d2 K  ^* L8 p: q- z
  2. #bn {
    0 Q. r2 y# f# U- P( Z$ R2 Y, g& c& }
  3.   background-color:#FF0000;
    0 J2 x1 J. Z- G6 T6 T. e  D; H/ p
  4.   width: 100%;
    ! ^3 M* o( ?$ @: Q4 A/ d2 ^
  5.   height:500px;
    ! y( _3 p3 [) x8 L2 c7 f& h) W
  6.   overflow: hidden;
    8 b/ G. M* m! s- K
  7. }$ b  s. V8 v- T
  8. #bn .img
    : S* t4 g4 ^, o$ y8 B8 M, R
  9. {' _- R2 ~: L$ m* d
  10.   width:1920px;7 n+ T# H* L# J& s8 a
  11.   margin:0 calc(50% - 960px);& w1 C7 O  M9 t: a. G, S
  12. }$ N1 l" I" R. i8 J
  13. </style>
    % a/ o. A5 o$ A0 p8 z# q- ?

  14. ! `' \% B' L% N7 Q6 W
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码
# H. m0 w( Q- Q, {

5 p& G: Y1 @: Z1 N" g
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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