.stylelintrc.js 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. module.exports = {
  2. "rules": {
  3. /**
  4. * 颜色值使用小写
  5. */
  6. "color-hex-case": "lower",
  7. /**
  8. * 禁止使用无效的十六进制颜色
  9. */
  10. "color-no-invalid-hex": true,
  11. /**
  12. * 在calc函数内运算需要加上空格,(正确:calc(1px + 2px);)
  13. */
  14. "function-calc-no-unspaced-operator": true,
  15. /**
  16. * 必须在函数逗号后加上一个空格,(正确:transform: translate(1, 1);)
  17. */
  18. "function-comma-space-after": "always-single-line",
  19. /**
  20. * 禁止在函数逗号之前空格
  21. */
  22. "function-comma-space-before": "never",
  23. /**
  24. * 函数名称使用小写英文
  25. */
  26. "function-name-case": "lower",
  27. /**
  28. * 要求给网址加上引号,可以是单引号或者是双引号,(正确:background: url("http://www.baidu.com");)
  29. */
  30. "function-url-quotes": "always",
  31. /**
  32. *在函数之后需要加上空格,(正确:transform: translate(1, 1) scale(3);)
  33. */
  34. "function-whitespace-after": "always",
  35. /**
  36. *小于1的小数,需要前导0,(正确:(line-height: 0.5);)
  37. */
  38. "number-leading-zero": "always",
  39. /**
  40. *禁止整数尾随0,(错误:1.0)
  41. */
  42. "number-no-trailing-zeros": true,
  43. /**
  44. *禁止零长度的单位,(正确:(top: 0);)
  45. */
  46. "length-zero-no-unit": true,
  47. /**
  48. *禁止字符串中的'换行符'在未转义的情况下换行,因为字符串中没有换行符,使用\转义可换行,(正确:a {content: "first\Asecond";})
  49. */
  50. "string-no-newline": true,
  51. /**
  52. *给字符串指定单引号
  53. */
  54. "string-quotes": "single",
  55. /**
  56. *使用的单位为小写,(正确:px , vh)
  57. */
  58. "unit-case": "lower",
  59. /**
  60. *禁止未知单位
  61. */
  62. "unit-no-unknown": true,
  63. /**
  64. *允许使用的单位的白名单:["px", "%", "deg", "ms", "em", "vh", "vw", "s", "rem"]
  65. */
  66. "unit-whitelist": ["px", "%", "deg", "ms", "em", "vh", "vw", "s", "rem"],
  67. /**
  68. *在值列表的逗号后需要加上空格(正确:background-size: 0, 0;)
  69. */
  70. "value-list-comma-space-after": "always-single-line",
  71. /**
  72. *在值列表的逗号之前禁止空格
  73. */
  74. "value-list-comma-space-before": "never",
  75. /**
  76. *禁止使用冗余值,(错误:margin: 1px, 1px 1px 1px;)
  77. */
  78. "shorthand-property-no-redundant-values": true,
  79. /**
  80. *属性名使用小写
  81. */
  82. "property-case": "lower",
  83. /**
  84. *禁止声明块中的重复属性,(错误:p { font-size:16 px; font-size:1 rem; })
  85. */
  86. "declaration-block-no-duplicate-properties": true,
  87. /**
  88. *在声明块中要求使用尾随分号,(正确:color: #fff;)
  89. */
  90. "declaration-block-trailing-semicolon": "always",
  91. /**
  92. *每一行的声明数为1,正确写法如下:
  93. *a {
  94. * color: pink;
  95. * top: 3px;
  96. * }
  97. */
  98. "declaration-block-single-line-max-declarations": 1,
  99. /**
  100. *在声明块的分号之前禁止空格,(正确:a { color: pink; })
  101. */
  102. "declaration-block-semicolon-space-before": "never",
  103. /**
  104. *在声明块的分号后需要加上一个空格
  105. */
  106. "declaration-block-semicolon-space-after": "always-single-line",
  107. /**
  108. *在多行声明块,分号前禁止换行
  109. */
  110. "declaration-block-semicolon-newline-before": "never-multi-line",
  111. /**
  112. *在多行声明块,分号后需要换行
  113. */
  114. "declaration-block-semicolon-newline-after": "always-multi-line",
  115. /**
  116. *在声明中,不允许的属性和值对的黑名单
  117. */
  118. "declaration-property-value-blacklist": [{
  119. "/.*/": ["initial"]
  120. },
  121. {
  122. "message": "在IE里面不支持`initial`的值"
  123. }
  124. ],
  125. /**
  126. *在块的右大括号之后需要换行符,忽略if,else
  127. */
  128. "block-closing-brace-newline-after": [
  129. "always",
  130. {
  131. "ignoreAtRules": ["if", "else"]
  132. }
  133. ],
  134. /**
  135. *在块的右大括号之前需要换行符
  136. */
  137. "block-closing-brace-newline-before": "always-multi-line",
  138. /**
  139. *在开始的块大括号之后需要换行符
  140. */
  141. "block-opening-brace-newline-after": "always-multi-line",
  142. /**
  143. *在开始的块大括号之前需要换行符
  144. */
  145. "block-opening-brace-space-before": "always-multi-line",
  146. /**
  147. *在属性选择器中的括号内部禁止空格,(正确:[target=_blank] {})
  148. */
  149. "selector-attribute-brackets-space-inside": "never",
  150. /**
  151. *在属性选择器中的运算符之后禁止空格,(正确:[target=_blank] {})
  152. */
  153. "selector-attribute-operator-space-after": "never",
  154. /**
  155. *在属性选择器中的运算符之前禁止空格,(正确:[target=_blank] {})
  156. */
  157. "selector-attribute-operator-space-before": "never",
  158. /**
  159. *在选择器的组合器之后需要单个空格,(正确:a + b { color: pink; })
  160. */
  161. "selector-combinator-space-after": "always",
  162. /**
  163. *在选择器的组合器之前需要单个空格,(正确:a + b { color: pink; })
  164. */
  165. "selector-combinator-space-before": "always",
  166. /**
  167. *伪类选择器使用小写,(正确:a:hover {})
  168. */
  169. "selector-pseudo-class-case": "lower",
  170. /**
  171. *禁止伪类选择器中,在括号内部使用空格,(正确:input:not([type="submit"]) {})
  172. */
  173. "selector-pseudo-class-parentheses-space-inside": "never",
  174. /**
  175. *伪元素选择器使用小写,(正确:a::before {})
  176. */
  177. "selector-pseudo-element-case": "lower",
  178. /**
  179. *为适用的伪元素指定双冒号表示法,(正确:a::before { color:pink; })
  180. */
  181. "selector-pseudo-element-colon-notation": "double",
  182. /**
  183. *禁止未知的伪元素选择器,忽略ng-deep
  184. */
  185. "selector-pseudo-element-no-unknown": [true, {
  186. "ignorePseudoElements": ["ng-deep"]
  187. }],
  188. /**
  189. *类型选择器使用小写,(正确:a {})
  190. */
  191. "selector-type-case": "lower",
  192. /**
  193. *禁止缺少源代码换行符,(错误:a { color: pink; }\n)
  194. */
  195. "no-missing-end-of-source-newline": true,
  196. /**
  197. *限制一行的最大长度为120
  198. */
  199. "max-line-length": 120
  200. }
  201. };