规则确定了代码检查工具寻找和指正的内容。默认情况下,所有规则都处于关闭状态,并且没有任何规则的默认值。规则遵循一致的命名约定,并且设计为彼此协同工作,您可以在“关于规则”部分中阅读更多相关信息。
内置规则适用于标准 CSS 语法,除了 indentation 规则之外,所有规则都将忽略包含非标准语法的结构,例如变量插值和混合。
除了这些规则之外,还有插件,它们是社区构建的规则,支持方法论、工具集、非标准 CSS 功能或非常具体的用例。不要忘记查看插件列表以获取更多检查方法。
以下是 stylelint 中的所有内置规则,首先按类别,然后按事物分组。
color-no-invalid-hex:禁止无效的 16 进制颜色。font-family-no-duplicate-names:禁止重复的字体族名称。font-family-no-missing-generic-family-keyword:禁止在字体族名称列表中缺少通用字体族关键字。function-calc-no-invalid:禁止在 calc 函数中使用无效表达式。function-calc-no-unspaced-operator:禁止在 calc 函数中使用没有间隔的运算符。function-linear-gradient-no-nonstandard-direction:禁止在 linear-gradient() 中调用不符合标准语法的无效方向值。string-no-newline:禁止字符串中的(未转义)换行符。unit-no-unknown:禁止未知的单位。property-no-unknown:禁止未知的属性。keyframe-declaration-no-important:禁止关键帧声明的 !important。declaration-block-no-duplicate-properties:禁止声明块的重复属性。declaration-block-no-shorthand-property-overrides:禁止简写属性覆盖相关的扩写属性。block-no-empty:禁止空块。selector-pseudo-class-no-unknown:禁止未知的伪类选择器。selector-pseudo-element-no-unknown:禁止未知的伪元素选择器。selector-type-no-unknown:禁止未知的类型选择器。media-feature-name-no-unknown:禁止未知的媒体功能名。####@规则
at-rule-no-unknown:禁止未知的@规则。comment-no-empty:禁止空注释。no-descending-specificity:禁止在具有较高优先级的选择器后出现被其覆盖的较低优先级的选择器。no-duplicate-at-import-rules:禁止在样式表中使用重复的 @import 规则。no-duplicate-selectors:禁止样式表中的重复选择器。no-empty-source:禁止空源码。no-extra-semicolons:禁止额外的分号(可自动修复)。no-invalid-double-slash-comments:禁止 CSS 不支持并可能导致意外结果的双斜杠注释(//...)。color-named:要求(如果可能)或禁止命名颜色。color-no-hex:禁止 16 进制颜色。function-blacklist:指定禁用的函数的黑名单。function-url-no-scheme-relative:禁止相对协议 URL。function-url-scheme-blacklist:指定禁用的 URL 协议的黑名单。function-url-scheme-whitelist:指定允许的 URL 协议的白名单。function-whitelist:指定允许的函数的白名单。keyframes-name-pattern:指定关键帧名的模式。number-max-precision:限制数字中允许的小数位数time-min-milliseconds:指定时间值的最小毫秒数。unit-blacklist:指定禁用的单位的黑名单。unit-whitelist:指定允许的单位的白名单。shorthand-property-no-redundant-values:禁止简写属性的冗余值(可自动修复)。value-no-vendor-prefix:禁止值的浏览器引擎前缀。custom-property-pattern:指定自定义属性的模式。property-blacklist:指定禁用的属性的黑名单。property-no-vendor-prefix:禁止属性的浏览器引擎前缀。property-whitelist:指定允许的属性的白名单。declaration-block-no-redundant-longhand-properties:禁止可合并为一个简写属性的扩写属性。declaration-no-important:禁止声明的 !important。declaration-property-unit-blacklist:指定声明内禁用的属性和单位对的黑名单。declaration-property-unit-whitelist:指定声明内允许的属性和单位对的白名单。declaration-property-value-blacklist:指定声明内禁用的属性和值对的黑名单。declaration-property-value-whitelist:指定声明内允许的属性和值对的白名单。declaration-block-single-line-max-declarations:限制一个单行声明块中声明的数量selector-attribute-operator-blacklist:指定禁用的属性运算符的黑名单。selector-attribute-operator-whitelist:指定允许的属性运算符的白名单。selector-class-pattern:指定类选择器的模式。selector-combinator-blacklist:指定禁用的组合选择器的黑名单。selector-combinator-whitelist:指定允许的组合选择器的白名单。selector-id-pattern:指定 ID 选择器的模式。selector-max-attribute:限制一个选择器中属性选择器的数量selector-max-class:限制一个选择器中类的数量selector-max-combinators:限制一个选择器中组合选择器的数量selector-max-compound-selectors:限制一个选择器中复合选择器的数量selector-max-empty-lines:限制选择器中相邻空行的数量selector-max-id:限制一个选择器中 ID 选择器的数量selector-max-pseudo-class:限制一个选择器中伪类的数量selector-max-specificity:限制选择器的优先级。selector-max-type:限制一个选择器中类型选择器的数量selector-max-universal:限制一个选择器中通用选择器的数量selector-nested-pattern:指定嵌套规则的选择器的模式。selector-no-qualifying-type:禁止用类型选择器来限定一个选择器。selector-no-vendor-prefix:禁止选择器的浏览器引擎前缀。selector-pseudo-class-blacklist:指定禁用的伪类选择器的黑名单。selector-pseudo-class-whitelist:指定允许的伪类选择器的白名单。selector-pseudo-element-blacklist:指定禁用的伪元素选择器的黑名单。selector-pseudo-element-whitelist:指定允许的伪元素选择器的白名单。media-feature-name-blacklist:指定禁用的媒体功能名的黑名单。media-feature-name-no-vendor-prefix:禁止媒体功能名的浏览器引擎前缀。media-feature-name-value-whitelist:指定允许的媒体功能名和值对的白名单。media-feature-name-whitelist:指定允许的媒体功能名的白名单。custom-media-pattern:指定自定义媒体查询名的模式。####@规则
at-rule-blacklist:指定禁用的@规则的黑名单。at-rule-no-vendor-prefix:禁止@规则的浏览器引擎前缀。at-rule-whitelist:指定允许的@规则的白名单。comment-word-blacklist:指定在注释中禁用的单词的黑名单。max-nesting-depth:限制允许的嵌套深度。no-unknown-animations:禁止未知的动画。color-hex-case:指定 16 进制颜色的大小写(可自动修复)。color-hex-length:指定 16 进制颜色的简写或扩写(可自动修复)。font-family-name-quotes:指定是否应在字体族名称周围使用引号。font-weight-notation:要求 font-weight 使用数字或命名(如果可能)值。此外,当需要命名值时,要求名称有效。function-comma-newline-after:要求在函数的逗号之后必须有换行符或不能有空白符(可自动修复)。function-comma-newline-before:要求在函数的逗号之前必须有换行符或不能有空白符(可自动修复)。function-comma-space-after:要求在函数的逗号之后必须有一个空格或不能有空白符(可自动修复)。function-comma-space-before:要求在函数的逗号之前必须有一个空格或不能有空白符(可自动修复)。function-max-empty-lines:限制函数中相邻空行的数量(可自动修复)function-name-case:指定函数名的大小写(可自动修复)。function-parentheses-newline-inside:要求在函数的括号内侧必须有换行符或不能有空白符(可自动修复)。function-parentheses-space-inside:要求在函数的括号内侧必须有一个空格或不能有空白符(可自动修复)。function-url-quotes:要求或禁止 URL 的引号。function-whitespace-after:要求或禁止函数之后的空白符(可自动修复)。number-leading-zero:要求或禁止小于 1 的小数有一个前导零(可自动修复)。number-no-trailing-zeros:禁止数量的尾随零(可自动修复)。string-quotes:指定字符串使用单引号或双引号(可自动修复)。length-zero-no-unit:禁止零长度的单位(可自动修复)。unit-case:指定单位的大小写(可自动修复)。value-keyword-case:指定关键字值的大小写(可自动修复)。value-list-comma-newline-after:要求在值列表的逗号之后必须有换行符或不能有空白符(可自动修复)。value-list-comma-newline-before:要求在值列表的逗号之前必须有换行符或不能有空白符。value-list-comma-space-after:要求在值列表的逗号之后必须有一个空格或不能有空白符(可自动修复)。value-list-comma-space-before:要求在值列表的逗号之前必须有一个空格或不能有空白符(可自动修复)。value-list-max-empty-lines:限制值列表中相邻空行的数量(可自动修复)custom-property-empty-line-before:要求或禁止在自定义属性之前的空行(可自动修复)。property-case:指定属性的大小写(可自动修复)。declaration-bang-space-after:要求在声明的叹号之后必须有一个空格或不能有空白符(可自动修复)。declaration-bang-space-before:要求在声明的叹号之前必须有一个空格或不能有空白符(可自动修复)。declaration-colon-newline-after:要求在声明块的冒号之后必须有换行符或不能有空白符(可自动修复)。declaration-colon-space-after:要求在声明块的冒号之后必须有一个空格或不能有空白符(可自动修复)。declaration-colon-space-before:要求在声明块的冒号之前必须有一个空格或不能有空白符(可自动修复)。declaration-empty-line-before:要求或禁止在声明之前的空行(可自动修复)。declaration-block-semicolon-newline-after:要求在声明块的分号之后必须有换行符或不能有空白符(可自动修复)。declaration-block-semicolon-newline-before:要求在声明块的分号之前必须有换行符或不能有空白符。declaration-block-semicolon-space-after:要求在声明块的分号之后必须有一个空格或不能有空白符(可自动修复)。declaration-block-semicolon-space-before:要求在声明块的分号之前必须有一个空格或不能有空白符(可自动修复)。declaration-block-trailing-semicolon:要求或禁止声明块的一个尾随分号(可自动修复)。block-closing-brace-empty-line-before:要求或禁止在块的闭大括号之前空行(可自动修复)。block-closing-brace-newline-after:要求在块的闭大括号之后必须有换行符或不能有空白符(可自动修复)。block-closing-brace-newline-before:要求在块的闭大括号之前必须有换行符或不能有空白符(可自动修复)。block-closing-brace-space-after:要求在块的闭大括号之后必须有一个空格或不能有空白符。block-closing-brace-space-before:要求在块的闭大括号之前必须有一个空格或不能有空白符(可自动修复)。block-opening-brace-newline-after:要求在块的开大括号之后必须有换行符(可自动修复)。block-opening-brace-newline-before:要求在块的开大括号之前必须有换行符或不能有空白符(可自动修复)。block-opening-brace-space-after:要求在块的开大括号之后必须有一个空格或不能有空白符(可自动修复)。block-opening-brace-space-before:要求在块的开大括号之前必须有一个空格或不能有空白符(可自动修复)。selector-attribute-brackets-space-inside:要求在属性选择器的中括号内侧必须有一个空格或不能有空白符(可自动修复)。selector-attribute-operator-space-after:要求在属性选择器中的运算符之后必须有一个空格或不能有空白符(可自动修复)。selector-attribute-operator-space-before:要求在属性选择器中的运算符之前必须有一个空格或不能有空白符(可自动修复)。selector-attribute-quotes:要求或禁止属性值的引号。selector-combinator-space-after:要求在组合选择器之后必须有一个空格或不能有空白符(可自动修复)。selector-combinator-space-before:要求在组合选择器之前必须有一个空格或不能有空白符(可自动修复)。selector-descendant-combinator-no-non-space:禁止后代选择器使用非空格字符(可自动修复)。selector-pseudo-class-case:指定伪类选择器的大小写(可自动修复)。selector-pseudo-class-parentheses-space-inside:要求在伪类选择器的括号内侧必须有一个空格或不能有空白符(可自动修复)。selector-pseudo-element-case:指定伪元素选择器的大小写。selector-pseudo-element-colon-notation:指定伪元素适用单冒号还是双冒号表示法(可自动修复)。selector-type-case:指定类型选择器的大小写(可自动修复)。selector-list-comma-newline-after:要求在选择器列表的逗号之后必须有换行符或不能有空白符(可自动修复)。selector-list-comma-newline-before:要求在选择器列表的逗号之前必须有换行符或不能有空白符(可自动修复)。selector-list-comma-space-after:要求在选择器列表的逗号之后必须有一个空格或不能有空白符(可自动修复)。selector-list-comma-space-before:要求在选择器列表的逗号之前必须有一个空格或不能有空白符(可自动修复)。rule-empty-line-before:要求或禁止在规则之前的空行(可自动修复)。media-feature-colon-space-after:要求在媒体功能的冒号之后必须有一个空格或不能有空白符(可自动修复)。media-feature-colon-space-before:要求在媒体功能的冒号之前必须有一个空格或不能有空白符(可自动修复)。media-feature-name-case:指定媒体功能名的大小写(可自动修复)。media-feature-parentheses-space-inside:要求在媒体功能的括号内侧必须有一个空格或不能有空白符(可自动修复)。media-feature-range-operator-space-after:要求在媒体功能的范围运算符之后必须有一个空格或不能有空白符(可自动修复)。media-feature-range-operator-space-before:要求在媒体功能的范围运算符之前必须有一个空格或不能有空白符(可自动修复)。media-query-list-comma-newline-after:要求在媒体查询列表的逗号之后必须有换行符或不能有空白符(可自动修复)。media-query-list-comma-newline-before:要求在媒体查询列表的逗号之前必须有换行符或不能有空白符。media-query-list-comma-space-after:要求在媒体查询列表的逗号之后必须有一个空格或不能有空白符(可自动修复)。media-query-list-comma-space-before:要求在媒体查询列表的逗号之前必须有一个空格或不能有空白符(可自动修复)。####@规则
at-rule-empty-line-before:要求或禁止在@规则之前的空行(可自动修复)。at-rule-name-case:指定@规则名的大小写(可自动修复)。at-rule-name-newline-after:要求在@规则名之后必须有换行符。at-rule-name-space-after:要求在@规则名之后必须有一个空格(可自动修复)。at-rule-semicolon-newline-after:要求在@规则的分号之后必须有换行符(可自动修复)。at-rule-semicolon-space-before:要求在@规则的分号之前必须有一个空格或不能有空白符。comment-empty-line-before:要求或禁止在注释之前的空行(可自动修复)。comment-whitespace-inside:要求或禁止注释标记内侧的空白符(可自动修复)。indentation:指定缩进(可自动修复)。linebreaks:指定 unix 或 windows 换行符(可自动修复)。max-empty-lines:限制相邻空行的数量。max-line-length:限制行的长度。no-eol-whitespace:禁止行尾空白符(可自动修复)。no-missing-end-of-source-newline:禁止缺少源码结尾换行符(可自动修复)。no-empty-first-line:禁止空第一行(可自动修复)。