PostCSS:PxToRem插件

时间:2016-01-12 03:35:35

标签: css node.js gulp postcss

非常使用Node.js并使用后期处理器进行CSS。阅读了几篇文章后,我设法安装了以下内容:

  1. Node.js(包括npm)
  2. 咕嘟咕嘟
  3. PostCSS
  4. Pxtorem(Gulp的PostCSS插件)
  5. 我想做的是拥有' pxtorem'插件将我的px单位转换为以下CSS属性的rems:font-size,margin,padding,border,width,height等,然后在新的CSS样式表中输出结果。

    问题:我需要在gulpfile.js中输入什么才能使其正常工作?

    重申一下,在键入变量和要求方面我是全新的,并且一直在关注视频和博客示例,其中没有一个具体的公式将像素转换为rems(因为有很多插件用于PostCSS)。

    这是我目前在当前gulpfile.js中的内容:

    var gulp = require('gulp');
    var postcss = require('gulp-postcss');
    var pxtorem = require('gulp-pxtorem');
    
    gulp.task('css', function() {
    gulp.src('./css-1/*.css')
        .pipe(pxtorem())
        .pipe(gulp.dest('./dest'));
    });
    

    以上所做的就是抓住我的" styles-1.css"样式表文件位于我的" css-1"文件夹并在我的" dest"中复制它夹。我输入的代码符合我正在阅读的文章,以了解PostCSS的工作原理,但显然不是将像素转换为rem的正确代码。

    P.S。我目前正在使用Windows 10操作系统。

1 个答案:

答案 0 :(得分:0)

根据gulp-pxtorem的文档,它声明:

  

选项

     

传入两个选项对象。 postcss-pxtorem的第一个   选项...

在访问postcss-pxtorem的文档后,我发现选项块看起来像这样:

class Movie():
    def __init__(self,movie_title, storyline,poster_image,trailer_youtube_url):
        self.movie_title=movie_title
        self.storyline=storyline
        self.poster_image=poster_image
        self.trailer__youtube_url=trailer_youtube_url
    ###define a trailer opening method    
    def show_trailer(self):
        webbrowser.open(self.trailer__youtube_url)


### create an instance of movies, toy_story
toy_story=Movie('Toy Story', 'A boy and his toy',  "https://upload.wikimedia.org/wikipedia/en/1/13/Toy_Story.jpg","https://www.youtube.com/watch?v=KYz2wyBy3kc"###url of youtube trailer)
fresh_tomatoes.open_movies_page(toy_story)

这是非常自我解释的,但如果您需要知道每个选项的作用,您可以在文档中阅读更多内容。您想要的选项是{ rootValue: 16, unitPrecision: 5, propWhiteList: ['font', 'font-size', 'line-height', 'letter-spacing'], selectorBlackList: [], replace: true, mediaQuery: false, minPixelValue: 0 }

所以,在你的gulpfile中:

propWhiteList

我认为你不需要使用第二个选项来达到你想要的结果。

祝你好运,编码愉快!