全屏使用swiper.js过程中遇到的坑

本文分享了Swiper.js插件在全屏应用时的常见问题及解决方案,包括样式设置、屏幕自适应方法的选择、消除滚动条及兼容性问题等。

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

概述

swiper.js确实是一个很好用的插件,下面记录下我在全屏使用过程中遇到的一些坑和解决办法,供以后开发时参考,相信对其他人也有用。

通用方案

一般来说,swiper需要放在body的下一层,虽然也可以用一个div包裹它,无论怎样,它的上级和上上级父节点都需要加上如下代码:

//有div.wrap包裹
body, html, .wrap, .swiper-container {
    width: 100%;
    height: 100%;
}


//无div包裹
body, html, .swiper-container {
    width: 100%;
    height: 100%;
}

屏幕自适应

有2种方案,各有优劣:

  • 屏幕自适应,滑动一下滑块即到了下一张slider,优点是体验很好,缺点是slider中超过屏幕的内容会自动被隐藏且不能被看到。
  • 屏幕不自适应,滑动一下会滑动到当前slider的底部,再滑一下才能滑到下一页。优点是能看到整页内容,缺点是体验不好。

以上两种方案其实就是height是具体数值还是百分比的问题,实现代码如下:

//屏幕自适应
.swiper-slide {
    height: 100%; //这里是终点
    width: 100%;
    position: relative;
    overflow: hidden;
}


//屏幕不自适应
.swiper-slide {
    height: 950px; //具体数值,随意填
    width: 100%;
    position: relative;
    overflow: hidden;
}

所以如果每一个slider的内容很多,就只能用屏幕不自适应的方法,否则建议选用屏幕自适应的方法。

需要注意的是:

  1. 由于height:100%的机制是对比父标签的,所以屏幕自适应方案中可能需要将所有父容器的height都设置为100%,甚至有必要使用!important。
  2. 屏幕自适应方案安排页脚的方法是:把页脚单独放在一个slider里面。

消除滚动条

一般情况下使用swiper浏览器右侧是没有滚动条的,但是一些特殊情况或者兼容其它浏览器时就会突然有滚动条,这个时候可以用如下css代码解决:

overflow-y:hidden;

这行代码有些时候有兼容问题,但是可以通过设置position:relative解决,具体方法自行百度。

兼容问题

如果要兼容IE7的话,请使用swiper2。否则的话,在IE7上面swiper不能切换slider。

转载于:https://www.cnblogs.com/yangzhou33/p/8871471.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值