搜索
查看: 14203|回复: 0

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

[复制链接]
发表于 2020-4-27 11:51:31 | 显示全部楼层 |阅读模式
  今天做一个网站的banner轮播,程序里面自带的是自动改变图片的高宽比例达到自适用的目的。  目标想法是控制div宽度100%,图片大小不变,div宽度改变的情况下,图片始终居中显示,然后隐藏掉两边的图片。- M( C7 o: }6 @$ h9 ^' A6 w8 H
4 k& u5 P9 }6 i4 L' x5 g% f
  实现原理:
: ~$ X& L5 W4 A/ J* d  固定div的高度为500px,宽度是100%,超出部分隐藏,以达到自适用浏览器宽度的要求。图片控制宽1920px,适用目前大部分电脑屏幕分辨率,然后就是设置margin了,想要他始终居中,就是中心的位置始终不变。在1920px的情况下,图片的中心x轴就是960px。那么在1800px就是900px,相比与标准的1920px宽度,向左移动了60px,只需要margin左边移动-60px即可。# L- [9 S5 E+ i/ R6 q3 l- R
  同理在100%的x轴坐标下,margin-left的值就是50%-960px,代码如下:" a5 j. ^5 ~# h+ {1 c8 F: [
  1. <style>! p2 r4 P; ]! n! a9 Y" F$ `
  2. #bn {
    6 q$ D) [. W1 P4 _: `, E
  3.   background-color:#FF0000;
    9 [0 P' b, v' I$ ]' \: B! y
  4.   width: 100%;
    * X3 d% `; y, H# V* n* {
  5.   height:500px;" u, s' M0 N. c% V9 e
  6.   overflow: hidden;
    " E* H7 T; m2 U4 t: K; X4 r/ a9 N
  7. }9 Y/ O, a: w+ s8 K0 w# U" d: S
  8. #bn .img! E+ {9 d( f- Q% {
  9. {  C  f$ T1 O+ c1 H+ v  E0 Q/ C
  10.   width:1920px;
    , B# C2 Y9 m) y( B7 ?
  11.   margin:0 calc(50% - 960px);
    9 {2 L9 I6 y) z0 y* l; _( J
  12. }- z/ {) a: h* r+ Y" ^
  13. </style>
    3 |# ]; r8 r5 c; Z
  14. , s; n, x# ~* y
  15. <div id="bn"><img src="/image/1.jpg" class="img"/></div>
复制代码
9 p6 p6 c+ U5 \: G
9 V4 A, \/ q/ O2 E& H
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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