项目作者: yingye

项目描述 :
A plugin for that generates rpx units from pixel units, it also can generate units which you want.
高级语言: JavaScript
项目地址: git://github.com/yingye/postcss-px2units.git
创建时间: 2018-03-06T03:39:58Z
项目社区:https://github.com/yingye/postcss-px2units

开源协议:MIT License

下载


English | 简体中文

postcss-px2units

Build Status
npm version
change-log

A plugin for PostCSS that generates rpx units from pixel units, it also can generate units which you want.

Install

  1. $ npm install postcss-px2units --save-dev

Usage

Input/Output

With the default settings, we will get this output.

  1. /* input */
  2. p {
  3. margin: 0 0 20px;
  4. font-size: 32px;
  5. line-height: 1.2;
  6. letter-spacing: 1px; /* no */
  7. }
  8. /* output */
  9. p {
  10. margin: 0 0 20rpx;
  11. font-size: 32rpx;
  12. line-height: 1.2;
  13. letter-spacing: 1px;
  14. }

Example

  1. var fs = require('fs');
  2. var postcss = require('postcss');
  3. var pxtorem = require('postcss-pxtorem');
  4. var css = fs.readFileSync('main.css', 'utf8');
  5. var options = {
  6. replace: false
  7. };
  8. var processedCss = postcss(pxtorem(options)).process(css).css;
  9. fs.writeFile('main-rem.css', processedCss, function (err) {
  10. if (err) {
  11. throw err;
  12. }
  13. console.log('Rem file written.');
  14. });

options

Type: Object | Null

Default:

  1. {
  2. divisor: 1,
  3. multiple: 1,
  4. decimalPlaces: 2,
  5. comment: 'no',
  6. targetUnits: 'rpx'
  7. }

Detail:

  • divisor(Number): divisor, replace pixel value with pixel / divisor.
  • multiple(Number): multiple, replace pixel value with pixel * multiple.
  • decimalPlaces(Number): the number of decimal places. For example, the css code is width: 100px, we will get the vaule is Number(100 / divisor * multiple).toFixed(decimalPlaces).
  • comment(String): default value is ‘no’. For example, if you set it ‘not replace’, the css code width: 100px; /* not replace */ will be translated to width: 100px;
  • targetUnits(String): The units will replace pixel units, you can set it ‘rem’.

Use with gulp-postcss

  1. var gulp = require('gulp');
  2. var postcss = require('gulp-postcss');
  3. var pxtounits = require('postcss-pxtounits');
  4. gulp.task('css', function () {
  5. return gulp.src('./test/src/css/**/*.css')
  6. .pipe(postcss([pxtounits()]))
  7. .pipe(gulp.dest('./test/dist/css'));
  8. });

Tips

If you want to use it in WePY, please use wepy-plugin-px2units.