2018-04-03 动态REM

手机专用的自适应方案
em是个单位,一个m的宽度
rem r表示root rem:根元素的font-size


image.png

页面的默认font-size是16px

chrome定义的最小字号像素是12px


image.png

font-size设置比12小的话,没有用


image.png

根元素html的默认样式是16px,所以这里p的1rem是16px
image.png

这里一个m的宽度就是自己的font-size的大小


image.png

做响应式需要4张设计图


image.png

PC端:flex/float定宽设计
手机端:噩梦


image.png

如何解决?
1、用百分比布局


image.png

这种的问题:高度不知道,没法让高度与宽度关联

2、整体缩放
需求


image.png

先在320px里做


image.png

那如果用户手机屏幕变了呢?比如变大了

解决:在其parent里加居中


image.png

这种在屏幕变大了的情况下,有些难看
所以我们还是需要上面需求的那样

image.png

屏幕的宽度是一个很重要的东西
怎么样让一个单位与页面宽度有关系呢?
rem:html的font-size大小如何与page-width有关系呢?
用JS


image.png

image.png

这样一个rem就等于页面宽度


image.png

在手机上用,代码里要加meta:vp
问题:基准单位太大了,都是0.几的小数
解决:我们让font-size等于页面宽度的1/100
image.png

font-size是5.几,chrome的默认设置是12px
所以这里不要设置的太小,我们让font-size是pageWidth的1/10即可
这里要注意,可以与其他单位混用(比如太小的border,用1px;或者字体不想随着屏幕缩小或放大,那么直接定死16px等)
image.png

接下来在SCSS里使用PX2REM
做这个事情的目的是,我写px,你自动帮我变成rem
1、安装sass


image.png

2、
image.png

运行
image.png

让scss文件变成css文件
image.png

这个px2rem这个函数是在scss文件里的


image.png

上面的是sass命令,如果是node-sass命令,步骤如下

  • npm config set registry https://registry.npm.taobao.org/

  • touch ~/.bashrc

  • echo 'export SASS_BINARY_SITE="https://npm.taobao.org/mirrors/node-sass"' >> ~/.bashrc

  • source ~/.bashrc

  • npm i -g node-sass

  • mkdir ~/Desktop/scss-demo

  • cd ~/Desktop/scss-demo

  • mkdir scss css

  • touch scss/style.scss

  • start scss/style.scss

  • node-sass -wr scss -o css

    编辑 scss 文件就会自动得到 css 文件

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rem 这个单位代表根元素的 font-size 大小(例如 元素的font-size)。 rem 与 em ...
    半斋阅读 2,790评论 0 0
  • 先上成果静态预览链接:https://xianjiezh.github.io/animating-pikachu/...
    没头脑很不高兴阅读 5,915评论 0 2
  • call、apply、bind 相同的地方 三者都是用来改变函数体内 this 对象的值 第一个参数都是 this...
    半斋阅读 2,801评论 0 0
  • Sass&Gulp 一、sass介绍 (一) SASS是一种CSS的开发工具,提供了许多便利的写法,大大节省了设计...
    锋享前端阅读 5,419评论 0 3
  • 突然得知爸妈和哥哥要回老家的消息,我很奇怪,因为五一假期并不算长,按理他们不会回老家,那怎么忽然回去了呢?...
    灵芙醉客阅读 1,342评论 0 0

友情链接更多精彩内容