postcss-px-to-viewport-units
Forked by evrone/postcss-px-to-viewport
A plugin for PostCSS that generates viewport units (vw, vh, vmin, vmax) from pixel units.
Usage
If your project involves a fixed width, this script will help to convert pixels into viewport units.
Input/Output
// {} // {}
Example
'use strict'; var fs = ;var postcss = ;var pxToViewport = ;var css = fs;var options = replace: false;var processedCss = css; fs;
Options
Default:
unitToConvert: 'px' viewportWidth: 320 viewportHeight: 568 // not now used; TODO: need for different units and math for different properties unitPrecision: 5 viewportUnit: 'vw' fontViewportUnit: 'vw' // vmin is more suitable. selectorBlackList: minPixelValue: 1 mediaQuery: false exclude: // ignore some files
unitToConvert
(String) unit to convert, by default, it is px.viewportWidth
(Number) The width of the viewport.viewportHeight
(Number) The height of the viewport.unitPrecision
(Number) The decimal numbers to allow the REM units to grow to.viewportUnit
(String) Expected units.fontViewportUnit
(String) Expected units for font.selectorBlackList
(Array) The selectors to ignore and leave as px.- If value is string, it checks to see if selector contains the string.
['body']
will match.body-class
- If value is regexp, it checks to see if the selector matches the regexp.
[/^body$/]
will matchbody
but not.body
- If value is string, it checks to see if selector contains the string.
minPixelValue
(Number) Set the minimum pixel value to replace.mediaQuery
(Boolean) Allow px to be converted in media queries.exclude
(Array or Regexp) Ignore some files like 'node_modules'- If value is regexp, will ignore the matches files.
- If value is array, the elements of the array are regexp.
Use with gulp-postcss
var gulp = ;var postcss = ;var pxtoviewport = ; gulp;
Use with webpack
Install
npm install postcss-px-to-viewport-units -D
webacpk config
moduleexports = module: rules: test: /\.css$/ use: "style-loader" "css-loader" "postcss-loader"
postcss config
And create .postcssrc.js
moduleexports = "plugins": "postcss-px-to-viewport-units": viewportWidth: 750 viewportHeight: 1334 unitPrecision: 5 viewportUnit: 'vw' selectorBlackList: fontViewportUnit: 'vw' minPixelValue: 1 mediaQuery: false exclude: /node_modules/