Sass 默认编译器可以自动添加前缀吗?

Can the Sass default compiler autoprefixes?

如果我有示例代码:

:fullscreen a {
  display: flex;
}

默认的 sass 编译器可以做到吗:

:-webkit-full-screen a {
  display: -webkit-box;
  display: flex;
}
:-moz-full-screen a {
  display: flex;
}
:-ms-fullscreen a {
  display: -ms-flexbox;
  display: flex;
}
:fullscreen a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

而不只是正常的 CSS 无前缀版本?

我一直在使用 Autoprefixer 来完成这项任务,但我想知道是否有比使用 2 个程序更好的方法。

您可以将 Compass 与 SASS 一起使用,但它不如 autoprefixer 优雅。

来自docs

You can configure the compass default browser support matrix by setting these variables as needed.

This file can be imported using: @import "compass/support"

还有更多内容 here

但是... 我建议您使用 Gulp、Grunt 或 Webpack 为 autoprefixer 找到一个好的策略,并将其制作成样板,以便您可以在你所有的项目。更轻松,您无需向样式表添加额外代码即可使其正常工作。 autoprefixer 存在的主要原因是让您在 CSS 文件中编写额外的代码,因此请使用它。

如果好奇的话,以下是 autoprefixer 的创建者不得不说的:

We can use mixin libraries with preproccesors like Compass for Sass or nib for Stylus. They solve a lot of problems, but create other problems instead. They force us to use a new syntax. They iterate much slower than modern browsers do, so a stable release can have a lot of unnecessary prefixes, and sometimes we need to create our own mixins.

阅读全文here