美文网首页vue
px2rem 移动端自适应方案

px2rem 移动端自适应方案

作者: 落痕無情 | 来源:发表于2018-08-05 22:27 被阅读0次

一套设计稿如何适配不同移动端设备?

开发 WebApp 时,我们通常只会从设计师那边拿到一个尺寸的项目设计图,比如是按照 iphone 6 为基础设计的,因此前端需要让这一套设计稿能够通用在不同的设备型号中,本文介绍的方式是采用 hotcss.js 插件。

hotcss.js 会自动根据手机型号计算 dpr 的值,同时在 html 根标签内植入一个相应的 font-size 的值。

hotcss.js 优点

  • 保证不同设备下的统一视觉体验。
  • 不需要你再手动设置 viewport,根据当前环境计算出最适合的 viewport。
  • 支持任意尺寸的设计图,不局限于特定尺寸的设计图。
  • 支持单一项目,多种设计图尺寸,专为解决大型,长周期项目。
  • 提供 px2rem 转换方法,CSS 布局,零成本转换,原始值不丢失。
  • 有效解决移动端真实 1 像素问题。

px2rem 原理

vue-loader 中使用 px2rem 插件,首先安装 px2rem-loader

npm install px2rem-loader --save-dev

根据设计稿所采用的手机型号(如iPhone 6 或 iPhone X),那么宽度则为 640px750px ,因此先在 chrome 调试工具中获取移动端的 <html> 根元素的 font-size 的值,然后在配置 vue-loader 时将其设为 remUnit 参数的值:

loaders: {
   css: 'vue-style-loader!css-loader!px2rem-loader?remUnit=40&remPrecision=8',
   scss: 'vue-style-loader!css-loader!px2rem-loader?remUnit=40&remPrecision=8!sass-loader'
}

这样就可以根据设计稿尺寸,在开发时写 CSS 像素的绝对值,即 px 单位,px2rem 会自动将尺寸转换成相应的 rem 单位,结合不同终端生成的不同 html 根元素的字体大小,从而实现一套设计稿在不同设备完美兼容的效果。

Tips

  • 对于一些布局类的样式宽度,通常采用百分比为单位,如 width: 100%; 又如配合box-sizing: border-box; 设置 width: 25%; 可控制一行放4个 div 容器。

  • 对于一些小组件,如按钮、文字等,直接写设计稿上的 css 尺寸即可。如 font-size, margin, padding, height…… 即使通过 PC 或 Pad 访问也不会丢失效果。

  • 响应式开发中,一般需要指定一个 min-width,这样页面尺寸缩小后,避免如按钮里面的文字不会因为外层容器宽度减小而换行。

项目应用

我将之前做的一个项目目录结构和 Webpack 配置文件提取出来,生成一个简易的 WebApp 脚手架,用于实现本文所述的自适应方案。

Github项目地址:基于Vue的WebApp项目构建模板

相关文章

  • px2rem 移动端自适应方案

    一套设计稿如何适配不同移动端设备? 开发 WebApp 时,我们通常只会从设计师那边拿到一个尺寸的项目设计图,比如...

  • 可伸缩布局flexible

    gitHub地址: GitHub - amfe/lib-flexible: 可伸缩布局方案 移动端自适应方案,相关...

  • 移动端rem自适应方案

    移动端rem自适应方案传送门https://segmentfault.com/a/1190000012225828

  • flexible

    移动端自适应方案 flexible github: https://github.com/amfe/lib-fle...

  • 记一次前端技术分享(移动端相关概念讲解)

    移动端开发中的相关概念讲解 1、移动端自适配方案 移动端如何根据不同手机尺寸进行页面的适配 rem 自适应和 vw...

  • 移动端自适应解决方案

    移动端自适应解决方案 谈到移动端自适应这个话题,如果要真正做好,那应该说是前端开发中的一个比较难以掌握的知识点了。...

  • 移动端自适应方案

    问题来源 传统web开发我们一般只需要用像素去描述dom的宽高,但考虑到移动端屏幕的尺寸千奇百怪,我们希望找到一种...

  • 移动端自适应方案

    自适应需要从以下几个方面入手:布局、字体、retina带来的问题 一、布局: 1. 用%做单位老方案,兼容性高在制...

  • 移动端自适应方案

    一、基础原理 1.基准值 (1)选择一种尺寸作为设计和开发的基准。(2)定义适配规则,自动适配其他屏幕下的尺寸。 ...

  • 移动端自适应方案

    绑定浏览器缩放和加载事件,动态修正跟字体大小

网友评论

    本文标题:px2rem 移动端自适应方案

    本文链接:https://www.haomeiwen.com/subject/pdobvftx.html