全屏使用swiper.js过程中遇到的坑
概述
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的内容很多,就只能用屏幕不自适应的方法,否则建议选用屏幕自适应的方法。
需要注意的是:
- 由于height:100%的机制是对比父标签的,所以屏幕自适应方案中可能需要将所有父容器的height都设置为100%,甚至有必要使用!important。
- 屏幕自适应方案安排页脚的方法是:把页脚单独放在一个slider里面。
消除滚动条
一般情况下使用swiper浏览器右侧是没有滚动条的,但是一些特殊情况或者兼容其它浏览器时就会突然有滚动条,这个时候可以用如下css代码解决:
overflow-y:hidden;
这行代码有些时候有兼容问题,但是可以通过设置position:relative解决,具体方法自行百度。
兼容问题
如果要兼容IE7的话,请使用swiper2。否则的话,在IE7上面swiper不能切换slider。
全屏使用swiper.js过程中遇到的坑的更多相关文章
- Flash设置全屏后,放到网页中显示不正常
stage.displayState = StageDisplayState.FULL_SCREEN;//全屏,注意当设置全屏后,放到网页中显示不正常
- 动态加载JS过程中如何判断JS加载完成
在正常的加载过程中,js文件的加载是同步的,也就是说在js加载的过程中,浏览器会阻塞接下来的内容的解析.这时候,动态加载便显得尤为重要了,由于它是异步加载,因此,它可以在后台自动下载,并不会妨碍其它内 ...
- Android中全屏 取消标题栏,TabHost中设置NoTitleBar的三种方法(转)
Android中全屏 取消标题栏,TabHost中设置NoTitleBar的三种方法http://www.cnblogs.com/zdz8207/archive/2013/02/27/android- ...
- 爬取CVPR 2018过程中遇到的坑
爬取 CVPR 2018 过程中遇到的坑 使用语言及模块 语言: Python 3.6.6 模块: re requests lxml bs4 过程 一开始都挺顺利的,先获取到所有文章的链接再逐个爬取获 ...
- VS2017 + EF + MySQL 我使用过程中遇到的坑
原文:VS2017 + EF + MySQL 我使用过程中遇到的坑 写在前面: 第一次使用MySQL连接VS的时候本着最新版的应该就是最好的,在MySQL官网下载了最新版的MySQL没有并且安装完成之 ...
- MySql数据库GROUP BY使用过程中的那些坑
MySql数据库GROUP BY使用过程中的那些坑 GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组. 特别注意: group by 有一个原则,就是 select 后面的所有 ...
- 百度自动发贴,登录很顺利的模拟实现,但发贴攻关失败,能力有限,追JS过程中颇为痛苦
攻关失败,且短期内看不到希望,看不到方向,且越来越焦急,目前已知的是,用根据用户的鼠标事件以一定的规则结合其他数据,服务器以这些数据验证是否为真正的手动发贴. 不过闲暇时实现了百度贴吧的自动签到. 较 ...
- 学习Nodejs:《Node.js开发指南》微博项目express2迁移至express4过程中填的坑
<Node.js开发指南>项目地址https://github.com/BYVoid/microblog好不容易找到的基础版教程,但书中是基于express2的,而现在用的是express ...
- 【Angular JS】网站使用社会化评论插件,以及过程中碰到的坑
目前正在开发自己的网站,技术上使用Angular JS + Express JS + Mongo DB.由于网站会有文章发布,因此需要有评论功能.评论功能也可以自己开发,但由于现在社会化评论插件很多, ...
随机推荐
- 5. Longest Palindromic Substring - Unsolved
https://leetcode.com/problems/longest-palindromic-substring/#/description Given a string s, find the ...
- fmt标签如何计算两个日期之间相隔的天数
<h2>start -- ${start}</h2><h2>end -- ${end}</h2><fmt:formatDate var=" ...
- Codeforces Round #538 (Div. 2) E 随机数生成
https://codeforces.com/contest/1114/problem/E 题意 交互题,需要去猜一个乱序的等差数列的首项和公差,你能问两种问题 1. 数列中有没有数比x大 2. 数列 ...
- boost--signal
1.signals2库 signals2库实现了线程安全的观察者模式,在signals2中观察者模式被称为信号/插槽(signals/slots),它是一种函数回调机制.一个信号可以关联一个或多个插槽 ...
- error C4430: error 2141
c:\evan\workspace\1\1\netwowkippack.h(50) : error C2146: 语法错误 : 缺少“;”(在标识符“nSourPort”的前面) c:\evan\wo ...
- Element类型
除了document,element类型也算是最常用的类型 Element节点有以下特征: nodeType 值为1 nodeName 元素的标签名 nodeValue 值为null parentNo ...
- IP和网段及子网掩码基础知识
IP地址由网络号和主机号两部分组成,网络号的最高位必须是"0",IP地址和子网掩码求"与"算出网络地址,只有网络地址相同才可直接通信,否则需要借助路由. 主机标 ...
- iOS程序的执行顺序 和 UIViewController的生命周期
iOS程序的执行顺序 1 进入程序的入口 进入main函数, 设置AppDelegate称为函数的代理 2 程序完成加载 -[AppDelegate application:didFinishLau ...
- Is Docker Good for Your Database?
https://dzone.com/articles/is-docker-good-for-your-database
- 关于Linux学习中的问题和体会
本科期间未开展过与之相关的课程,所以初次接触Linux难免有些问题!参照老师给的学习资料中内容,逐步解决了一些问题,但还有一些问题没解决,下面列举出自己遇到的一些问题. 1.在环境变量与文件查找专题中 ...