Css SASS未使用@import编译外部Google字体

Css SASS未使用@import编译外部Google字体,css,sass,gulp-sass,google-font-api,Css,Sass,Gulp Sass,Google Font Api,我在scss中使用以下行: @import url(https://fonts.googleapis.com/css?family=Montserrat:300,700); 它被编译成css而没有错误。。。一模一样: @import url(https://fonts.googleapis.com/css?family=Montserrat:300,700); 但它应该被编译成: /* vietnamese */ @font-face { font-family: 'Montserrat

我在scss中使用以下行:

@import url(https://fonts.googleapis.com/css?family=Montserrat:300,700);
它被编译成css而没有错误。。。一模一样:

@import url(https://fonts.googleapis.com/css?family=Montserrat:300,700);
但它应该被编译成:

/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;

etc...

我正在使用编译我的SCS,它基于
libsass
。它说我的语法是正确的。为什么这不起作用?

这实际上是预期的行为。引述:

@导入采用要导入的文件名。默认情况下,它会查找Sass 文件直接导入,但在某些情况下 它将编译为CSS@import规则:

  • 如果文件的扩展名是.css
  • 如果文件名以http://开头
  • 如果文件名是url()
  • 如果@import有任何媒体查询

换句话说:Sass不会将google字体中的css直接集成到css文件中。相反,在运行时,css import指令将解析链接。顺便说一句,谷歌会根据您的浏览器做出不同的响应。

好的!例如,我注意到css中的Android@import不起作用。这是否意味着我必须单独加载google字体css?使用link指令可能是最简单的:
。这对性能也有好处,因为@import可以防止样式表被同时下载。您可以在浏览器中打开google字体链接,并将css声明复制到您自己的样式表中,但正如我所提到的,google根据浏览器提供的响应略有不同,因此我不建议这样做。所以,是的,我想说你必须单独加载谷歌字体css。明白!谢谢标记为已回答。