图片轮播的位移不正常的调整(display:inline-block造成)

在制作图片轮播时,发现图片位移出现不正常现象,初始和结束时的位移偏差较大。经过排查,发现img元素的display属性默认为inline,而非预期的inline-block。由于img元素表现类似inline-block,导致图片间存在4px左右的间隔。为解决此问题,提出了使用margin负值、float或去除换行空格的解决方案,建议采用后者以保持代码可读性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在做图片轮播的时候,遇到一点点小问题。
这里写图片描述
可以看到,图片轮播的位移并不完整,最开始会有一点,等到最后的时候可以看到现在的位移距离正常的已经偏移很多了。

然后开始了我的尝试
1. img的display属性是什么呢?
根据之前的理解,inline是width、height无效的,block是独占一行的,而img是不占一行但是可以设置width和height,所以我一直以为是inline-block,但是当测试的时候发现

alert($("img").css("display"));

是inline。

一般的标签不是inline就是block,但是img表现行为有点像inline-block,导致img之间有大约4px的间隔。
2. 如何img去除这个间隔?
a. 使用margin负间隔

    img {
        width: 500px;
        display: inline-block;
        margin-left: -4px;
    }
  优点:符合正常语义
  缺点:不能完全去除间隔(不一定是完全的﹣4px)

b.使用float

    img {
        width: 500px;
        float: left;
    }
优点:方便快速,而且完全没有间隔
缺点:float的破坏性很强,需要清除

c.去除代码之间的换行、空格

<img src="1.png" alt=""><img src="1.png" alt="">

优点:简单
缺点:使代码不宜查看

当遇到这种情况,我建议采用b c方法解决

以上是一些小尝试,有任何不对还希望大家多多指出!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值