移动端响应rem dpr viewport设置
来源:互联网 发布:echarts动态获取数据 编辑:程序博客网 时间:2024/05/20 18:51
(function () {
var t;
function initHtmlFont(){
var maxWidth = 640;
var html = document.documentElement;
var windowWidth = html.clientWidth;
var windowWidth = html.clientWidth>maxWidth?maxWidth:html.clientWidth;
html.style.fontSize = (windowWidth/640)*200+'px';
}
window.onresize = function(){
clearTimeout(t);
t = setTimeout(initHtmlFont,250);
}
document.addEventListener('DOMContentLoaded', function () {
initHtmlFont();
}, false);
})();
var dpr, rem, scale;
var docEl = document.documentElement;
var fontEl = document.createElement('style');
var metaEl = document.querySelector('meta[name="viewport"]');
dpr = window.devicePixelRatio || 1;
rem = docEl.clientWidth * dpr / 10;
scale = 1 / dpr;
// 设置viewport,进行缩放,达到高清效果
metaEl.setAttribute('content', 'width=' + dpr * docEl.clientWidth + ',initial-scale=' + scale + ',maximum-scale=' + scale + ', minimum-scale=' + scale + ',user-scalable=no');
// 设置data-dpr属性,留作的css hack之用
docEl.setAttribute('data-dpr', dpr);
// 动态写入样式
docEl.firstElementChild.appendChild(fontEl);
fontEl.innerHTML = 'html{font-size:' + rem + 'px!important;}';
// 给js调用的,某一dpr下rem和px之间的转换函数
window.rem2px = function(v) {
v = parseFloat(v);
return v * rem;
};
window.px2rem = function(v) {
v = parseFloat(v);
return v / rem;
};
window.dpr = dpr;
window.rem = rem;
- 移动端响应rem dpr viewport设置
- 移动端rem设置
- 【移动端】基于rem实现手机端页面自适应--动态改变dpr和font-size
- 移动端响应式rem用法
- 移动端响应式开发rem字体与页面百分比设置
- 浅谈meta viewport设置移动端自适应
- 移动端设置viewport元数据标签
- 移动端rem布局js设置
- 移动端rem设置,自动更改html
- 移动端开发-viewport实现响应式设计
- 【移动端】使用REM进行的响应式布局
- 移动端REM响应式模板及相应规范
- 移动端字体viewPort
- 移动端viewport
- 移动端viewport
- <meta name="viewport">移动端设置详解
- 移动端自适应rem
- 移动端rem布局
- stick
- echarts 树图点击展开关闭加数据!
- 怎么使用LINQ方法来比较自定义类型对象
- python基础数据类型(一):字符串
- Nginx安装过程中make出错fatal error: pcre.h: No such file or directory
- 移动端响应rem dpr viewport设置
- 火狐浏览器拒绝代理服务器连接
- SummerTraining——字典树(1)
- 蓝桥杯 最大算式
- UVa 10935
- WebUploader 图片上传插件前后端代码
- Eclipse中代码自动提示功能设置
- apt-get用不了怎么办?安装PIL失败怎么办?
- 深度学习优秀网站,持续更新中……