当前位置:网站首页>移动端像素适配方案
移动端像素适配方案
2020-11-06 22:11:00 【进击的前端】
rem
1. 在 public文件夹的公共html添加配置
原理:在文件的根目录生成添加font-size
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta name="description" content="Web site created using create-react-app" />
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<title>React App</title>
<script>
(function (w) {
var doc = w.document;
var docEl = doc.documentElement;
var timer;
function refersh() {
var width = docEl.getBoundingClientRect().width;
if (width > 750) {
width = 750;
}
var rem = width / 7.5;
docEl.style.fontSize = rem + "px";
}
w.addEventListener('resize', function () {
timer && clearTimeout(timer);
timer = setTimeout(refersh, 400)
})
w.addEventListener('pageshow', function () {
timer && clearTimeout(timer);
timer = setTimeout(refersh, 400)
})
})(window)
</script>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
</body>
</html>
2.
vm
vue-cli 自动匹配vm, 使用第三方依赖包
postcss-px-to-viewport 在vue.config.js文件中配置:
const pxtovw = require('postcss-px-to-viewport')
module.exports = {
css: {
loaderOptions: {
css: {
// 这里的选项会传递给 css-loader
},
postcss: {
// 这里的选项会传递给 postcss-loader
plugins: [
new pxtovw({
unitToConvert: 'px',
viewportWidth: 375,
unitPrecision: 5,
propList: ['*'],
viewportUnit: 'vw',
fontViewportUnit: 'vw',
selectorBlackList: [],
minPixelValue: 1,
mediaQuery: false,
replace: true,
exclude: [/node_modules/]
})
]
}
}
}
}
版权声明
本文为[进击的前端]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4618999/blog/4706901
边栏推荐
- image operating system windows cannot be used on this platform
- Python 100 cases
- Some operations kept in mind by the front end foundation GitHub warehouse management
- Road to simple HTML + JS to achieve the most simple game Tetris
- 小熊派开发板实践:智慧路灯沙箱实验之真实设备接入
- How much disk space does a new empty file take?
- ES6 learning notes (5): easy to understand ES6's built-in extension objects
- Helping financial technology innovation and development, atfx is at the forefront of the industry
- 超高频RFID医疗血液管理系统应用
- PHP application docking justswap special development kit【 JustSwap.PHP ]
猜你喜欢

Stickinengine architecture 11 message queue

STM32F030F4P6兼容灵动微MM32F031F4P6

Zhou Jie: database system of East China Normal University

大数据处理黑科技:揭秘PB级数仓GaussDB(DWS) 并行计算技术

Pn8162 20W PD fast charging chip, PD fast charging charger scheme

超高频RFID医疗血液管理系统应用

Some operations kept in mind by the front end foundation GitHub warehouse management

How much disk space does a file of 1 byte actually occupy

This project allows you to quickly learn about a programming language in a few minutes

递归、回溯算法常用数学基础公式
随机推荐
Python basic variable type -- list analysis
Interviewer: how about shardingsphere
2020-08-20:GO语言中的协程与Python中的协程的区别?
2020-09-09:裸写算法:两个线程轮流打印数字1-100。
Some operations kept in mind by the front end foundation GitHub warehouse management
Diamond standard
Summary of front-end performance optimization that every front-end engineer should understand:
2020 database technology conference helps technology upgrade
上海巨微专用蓝牙广播芯片
STM32F030F4P6兼容灵动微MM32F031F4P6
To teach you to easily understand the basic usage of Vue codemirror: mainly to achieve code editing, verification prompt, code formatting
STM32F030K6T6兼容替换灵动MM32F031K6T6
Open source a set of minimalist front and rear end separation project scaffold
2020-08-15:什么情况下数据任务需要优化?
Take you to learn the new methods in Es5
2020-09-04:函数调用约定了解么?
Hdu3974 assign the task segment tree DFS order
C calls SendMessage to refresh the taskbar icon (the icon does not disappear at the end of forcing)
[learning] interface test case writing and testing concerns
Exclusive interview of guests at | 2020 PostgreSQL Asia Conference: Wang Tao