less,sass,stylus三种预处理器px2rem

CSS单位rem

在W3C规范中是这样描述rem的:

font size of the root element.

移动端越来越多人使用rem,推荐淘宝开源框架lib-flexible

今天来介绍一下使用 预处理器转换px单位到rem

首先是sass的

复制代码

//定义一个变量和一个mixin
$baseFontSize: 16;//默认基准font-size
@mixin px2rem($name, $px){
  #{$name}: $px / $baseFontSize * 1rem;
}

// 使用示例:
 .container {
   @include px2rem(height, 240);
 }

//  scss翻译结果:
  .container {
    height: 3.2rem;
  }

复制代码

再来一个less的

复制代码

 1 //定义一个变量和一个mixin
 2 @baseFontSize: 75;//基于视觉稿横屏尺寸/100得出的基准font-size
 3 .px2rem(@name, @px){
 4     @{name}: @px / @baseFontSize * 1rem;
 5 }
 6 
 7 //使用示例:
 8 .container {
 9     .px2rem(height, 240);
10 }
11 
12 //less翻译结果:
13 .container {
14     height: 3.2rem;
15 }

复制代码

最后是stylus的

扫描二维码关注公众号,回复: 4260040 查看本文章

复制代码

//定义一个变量和一个mixin
$baseFontSize = 16; //默认基准font-size
px2rem(name, px){
{name}: px / $baseFontSize * 1rem;
}

// 使用示例:
.container {
  px2rem('height', 240);
}

//  stylus翻译结果:
.container {
  height: 3.2rem;
}

复制代码

最后,建议将mixin放入单独文件夹下,例如webpack中的common

之后使用只需要在style中引入,以scss为例

@import "../common/scss/mixin.scss";

  .all {
    @include px2rem(padding, 32);
  }

翻译

如果,你是用Sublime Text3的同学,有福了,插件奉上cssrem

转载于:https://www.cnblogs.com/shahramLu/p/6408551.html

猜你喜欢

转载自blog.csdn.net/a460550542/article/details/83275411