关于网友提出的“(html)swiper配合rem,以及rem插件出线的宽度被改变的问题”问题疑问,本网通过在网上对“(html)swiper配合rem,以及rem插件出线的宽度被改变的问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:(html)swiper配合rem,以及rem插件出线的宽度被改变的问题
描述:
swiper跟rem出线的一个稀奇古怪的问题
我的网页代码如下,无论是给swiper-wrapper加宽高,加overfllow:hidden都不行。研究了一晚上-。-好菜啊我
rem这个插件的代码如下:
(function (doc, win) {
var docEl = doc.documentElement,
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
recalc = function () {
var clientWidth = docEl.clientWidth;
if (!clientWidth) return;
if (clientWidth >= 640) {
docEl.style.fontSize = '100px';
} else {
docEl.style.fontSize = 100 * (clientWidth / 640) + 'px';
}
};
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
doc.addEventListener('DOMContentLoaded', recalc, false);
})(document, window);
理论上每个div的宽度为640px,但是却变得非常的小,如下图所示,大约每个100多px,这是为何。

解决方案1:
把rem.js去掉看看是不是元素宽度一样?说明页面进来后rem没有起作用,看下rem什么时候执行:

想到原因了没?还没有?网页默认rem是多少?1rem = 16px,那么你写的div宽度为6.4rem算出来是多少px?再用模拟器看下和16*6.4一样不?那为啥html标签上显示了当前的font-size,但是rem却不正确呢?
原理看这里,有点长不过值得看
以上介绍了“(html)swiper配合rem,以及rem插件出线的宽度被改变的问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/1309194.html