7

Jekyll 新手和 Ruby 新手 我尝试将我的 (s)css 文件的 autoprefixer-rails 直接包含到 Jekyll 中。所以一旦页面由 Jekyll 生成,自动前缀将运行在我生成的 css 文件上。不幸的是,我没有设法正确设置,自动前缀似乎甚至没有触及我的文件。

在我的 Gemfile 之后:

source "https://rubygems.org"

gem 'jekyll'
gem 'jekyll-assets'
gem 'autoprefixer-rails'

还有我的 Jekyll 配置文件的一部分:

...
gems: ['jekyll-assets', 'autoprefixer-rails']
...

缺少哪些设置才能使其正常工作?任何帮助表示赞赏!

4

4 回答 4

3

我可以通过在此处安装 octopress autoprefixer 将其与 jekyll 3 一起使用: https ://github.com/octopress/autoprefixer 。

然后你把: gems: [octopress-autoprefixer]在你的配置文件中。我没有使用 octopress,我只是安装了它以查看它是否可以工作。

在此过程中,我还安装了 node.js(在 pc 上,win 10),所以我可以安装 autoprefixer-rails。不确定 octopress 安装程序是否解决了这个问题,我只是在尝试随机的东西,看看它是否会起作用。我认为 node.js 是一个要求,因为我记得在我重新启动之前什么都没有发生,然后一切正常。

它工作得很好,虽然它确实减慢了我的构建时间 - 在一个通常在 0.5 秒内构建的小型站点上,它会上升到 12 秒。

于 2016-01-04T06:09:42.550 回答
1

这是完全可能的,也很容易!

您可以在网上找到的大多数资源都建议切换到Jekyll Assets,它带有许多默认插件,包括autoprefixer-rails。然而,这取代了整个 Jekyll 资产管道,并且需要在很多地方进行更改。前期投入相当高,只是为了让它发挥作用。另外,该项目似乎处于休眠状态

在继续寻找简单问题的简单解决方案的过程中,我遇到了jekyll-autoprefixer,它可以作为Ruby Gem使用。将其集成到我的 Jekyll 工作流程中非常简单:

  • 更新Gemfile以包含以下内容:

    gem "jekyll-autoprefixer", "~> 1.0.2"
    
  • 将以下内容添加到_config.yml

    plugins:
      - jekyll-autoprefixer
    
  • 可以选择将所需的浏览器支持添加到_config.yml(例如,对于最新的 2 个版本和 Edge 版本 14 及更高版本):

    autoprefixer:
      browsers: 
        - last 2 versions
        - Edge >= 14
    

    注意:您也可以在根目录中提供一个.browserslistrc文件。

  • 可选择启用 CSS 网格布局前缀。这似乎是不安全的,默认情况下是禁用的。您可以使用控制注释(例如)从 CSS 代码中启用它,也可以通过_config.yml/* autoprefixer grid: autoplace */全局启用它:

    autoprefixer:
      grid: autoplace
    

这就是将 autoprefixer 集成到 Jekyll 所需的全部内容。

于 2020-01-11T11:58:02.673 回答
1

将 Autoprefixer 添加到 Jekyll 的文档jekyll-assetsautoprefixer-rails更新: https ://github.com/jekyll/jekyll-assets#addons

于 2016-08-04T22:03:22.847 回答
0

autoprefixer-rails是一个 Rails 插件,它与 Jekyll 无关,不能在 Jekyll 中使用。

如果您需要 Jekyll 中的类似功能,您目前没有其他选择,只能自己开发。您可以从 Rails 插件中获取部分代码,但 Jekyll 插件的工作方式明显不同。

于 2015-03-22T12:42:55.910 回答