首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CSS processors

linter支持当前和未来的CSS语法。这包括所有标准CSS以及使用标准CSS语法结构的特殊功能,例如特殊的规则,特殊属性和特殊功能。一些类似 CSS的语言扩展 - 使用非标准语法结构的特性 - 因此受到支持; 然而,由于存在无限的处理可能性,因此linter不能支持所有内容。

您可以在css处理器之前或之后运行linter。根据您使用的处理器,每种方法都有警告:

  1. 之前:某些插件/处理器可能启用与linter不兼容的语法。
  2. 之后:某些插件/处理器可能会生成对您的linter配置无效的CSS,从而导致警告与原始样式表不对应。

在这两种情况下,您都可以关闭不兼容的linter规则,或者停止使用不兼容的插件/处理器。您还可以处理插件/处理器作者并请求替代格式化选项,以使其插件/处理器与stylelint兼容。

解析非标准语法

默认情况下,linter可以使用特殊的PostCSS解析器解析任何以下非标准语法:

非标准语法可以自动从下列文件扩展名推断出: .less .scss,和 .sss但是,如果您需要指定非标准语法,则CLINode API都会公开一个syntax选项。

  • 如果您使用的是CLI,请使用以下syntax标志:stylelint ... --syntax scss
  • 如果您正在使用Node API,请传递以下syntax选项:stylelint.lint({ syntax: "sugarss", ... })

此外,使用CLI或Node API时,stylelint可以接受与PostCSS兼容的自定义语法。对于自定义语法,请分别使用custom-syntaxcustomSyntax选项。

  • 如果您使用的是CLI,请使用如下custom-syntax标志:stylelint ... --custom-syntax custom-syntax-modulestylelint ... --custom-syntax ./path/to/custom-syntax-module
  • 如果您正在使用Node API,请传递以下customSyntax选项:stylelint.lint({ customSyntax: path.join(process.cwd(), './path/to/custom-syntax-module') , ... })

如果你使用linter作为PostCSS插件,你需要使用特殊的解析器直接使用PostCSS的syntax选项,如下所示:

代码语言:javascript
复制
var postcss = require("postcss")
var scss = require("postcss-scss")
// or use "postcss-less" or "sugarss"

postcss([
  require("stylelint"),
  require("reporter")
])
  .process(css, {
    from: "lib/app.css",
    syntax: scss
  })
})

扫码关注腾讯云开发者

领取腾讯云代金券