js实现rem响应式

来源:3-14 2 css-响应式-vw-wh

csupwj

2020-06-23

/计算屏幕基准font-size比例/
(function(doc, win) {
var docEl = doc.documentElement,
dpr = win.devicePixelRatio;
resizeEvt = ‘orientationchange’ in window ? ‘orientationchange’ : ‘resize’;
docEl.dataset.dpr = dpr;
var recalc = function() {
var width = docEl.clientWidth;
if (width / dpr > 750) {
width = 750 * dpr;
}
docEl.style.fontSize = 100 * (width / 750) + ‘px’;
};
recalc();
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
})(document, window);

通过js计算来实现rem的响应式 还会有什么弊端吗

写回答

1回答

双越

2020-06-23

弊端就是需要 js 计算,而且 js 计算和 DOM 渲染还是互斥的。如果网速稍微慢一点(加载 js 慢),或者浏览器稍微卡顿一点(执行 js 速度慢),那页面可能会出现卡顿或者大小的变化。

而用 css ,那就没有 js 计算的过程,来了什么样,渲染出来就是什么样。

0
4
慕村7130881
在首页head中去执行js计算的话,应该没什么问题了吧?
2022-02-21
共4条回复

一天时间高效准备前端技术一面 匹配大厂面试要求

针对时下面试高频考点,帮助新人js面试快速通关

4694 学习 · 1681 问题

查看课程