iTakeo

使用px2rem,将px转换成rem。

px2rem (npm链接) ,顾名思义将px转换成rem。在移动端的时候,需要将px根据页面的fontSize来设置rem,现在可以一键完成。

首先安装node环境,然后安装:npm install px2rem

接着安装:npm install gulp-px3rem

编辑gulpfile.js

  1. var gulp = require(‘gulp’),  
  2. px2rem = require(‘gulp-px3rem’);  
  3. gulp.task(‘pxrem’, function() {  
  4.     gulp.src(‘src/style/sty.css’)  
  5.     .pipe(px2rem({  
  6.         remUnit: 64  
  7.     }))  
  8.     .pipe(gulp.dest(‘dest’))  
  9. });  

其他选项:

  1. px2rem({  
  2.     baseDpr: 2,             // 基于设备的Dpr  
  3.     threeVersion: false,    // 是否生成 @1x, @2x and @3x 三个版本(默认: false),打开后  
  4.     remVersion: true,       // 是否生成rem版本(默认: true)  
  5.     remUnit: 75,            // rem转换比例 (默认: 75)  
  6.     remPrecision: 5         // rem保留几位数 (默认: 5)  
  7. }  

还有第二种方法,使用postcss插件,首先还是安装:npm install gulp-postcss

接着安装:npm install px2rem

再安装:npm install postcss-px2rem

编辑gulpfile.js

  1. var gulp = require(‘gulp’);  
  2. var postcss = require(‘gulp-postcss’);  
  3. var px2rem = require(‘postcss-px2rem’);  
  4. gulp.task(‘default‘, function() {  
  5.     var processors = [px2rem({remUnit: 75})];  
  6.     return gulp.src(‘./src/*.css’)  
  7.         .pipe(postcss(processors))  
  8.         .pipe(gulp.dest(‘./dest’));  
  9. });  

如果只让某个属性的px转换成rem,其他的不转换。可以使用注视 /*px*/ 这个表示不转换rem, /*no*/ 表示直接忽略。

  1. .test{  
  2.     width150px;  
  3.     height64px;   
  4.     font-size28px/*px*/  
  5.     border1px solid #ddd/*no*/  
  6. }  

编译之后,如下图所示:

2015/11/26 0 / /
标签:  暂无标签

验证码: 5 + 2 =

回到顶部