首页 > 其他分享 >stylelint 配置使用,自动修复css,书写顺序

stylelint 配置使用,自动修复css,书写顺序

时间:2022-08-18 11:24:57浏览次数:89  
标签:stylelint no color 书写 width border order css

stylelint 配置使用,自动修复css,书写顺序
https://juejin.cn/post/6940127032932040735
阿离王
lv-4
2021年03月16日 13:58 · 阅读 5100
关注
stylelint 配置使用
安装 stylelint 和 Standard 规范
npm install --save-dev stylelint stylelint-config-standard
复制代码
然后再根目录创建 .stylelintrc.js 文件, 并写下以下内容
{
"extends": "stylelint-config-standard"
}
复制代码
在 package.json 文件的 scripts 加上命令, 规则检查自动修复css
"style": "stylelint "src/**/*.(vue|scss|css)" --fix",
复制代码
vscode配置
安裝 StyleLint

在 settings.json 文件设置, win + , 快捷键可以快速打开

{
"editor.codeActionsOnSave": {
"source.fixAll.stylelint": true
}
}
复制代码
设置完之后,在vscode就可以有提示了,也保存自动修复了

自定义css属性顺序规则
除了使用设定默认的 standard 规则外,我们还可以在 .stylelintrc.js 内添加自己喜欢的规则

先安装 stylelint-order
npm install stylelint-order --save-dev
复制代码
在 .stylelintrc.js 设置代码如下
module.exports = {
"plugins": [
"stylelint-order"
],
"rules": {
"order/properties-order": [
"width",
"height"
]
}
}
复制代码
先引入 plugins 插件, 在 order/properties-order 里面写css属性的先后顺序,

完整的 .stylelintrc.js 如下
module.exports = {
"extends": [
"stylelint-config-standard"
],
"plugins": [
"stylelint-order"
],
"rules": {
// 颜色指定大写
"color-hex-case": "upper",
// 禁止空块
'block-no-empty': true,
// 颜色6位长度
"color-hex-length": "long",
// 兼容自定义标签名
"selector-type-no-unknown": [true, {
"ignoreTypes": []
}],
// 忽略伪类选择器 ::v-deep
"selector-pseudo-element-no-unknown": [true, {
"ignorePseudoElements": ["v-deep"]
}],
// 禁止低优先级的选择器出现在高优先级的选择器之后。
"no-descending-specificity": null,
// 不验证@未知的名字,为了兼容scss的函数
"at-rule-no-unknown": null,
// 禁止空注释
"comment-no-empty": true,
// 禁止简写属性的冗余值
"shorthand-property-no-redundant-values": true,
// 禁止值的浏览器引擎前缀
"value-no-vendor-prefix": true,
// property-no-vendor-prefix
"property-no-vendor-prefix": true,
// 禁止小于 1 的小数有一个前导零
"number-leading-zero": "never",
// 禁止空第一行
"no-empty-first-line": true,
// 属性的排序
"order/properties-order": [
"position",
"top",
"right",
"bottom",
"left",
"z-index",
"display",
"justify-content",
"align-items",
"float",
"clear",
"overflow",
"overflow-x",
"overflow-y",
"margin",
"margin-top",
"margin-right",
"margin-bottom",
"margin-left",
"border",
"border-style",
"border-width",
"border-color",
"border-top",
"border-top-style",
"border-top-width",
"border-top-color",
"border-right",
"border-right-style",
"border-right-width",
"border-right-color",
"border-bottom",
"border-bottom-style",
"border-bottom-width",
"border-bottom-color",
"border-left",
"border-left-style",
"border-left-width",
"border-left-color",
"border-radius",
"padding",
"padding-top",
"padding-right",
"padding-bottom",
"padding-left",
"width",
"min-width",
"max-width",
"height",
"min-height",
"max-height",
"font-size",
"font-family",
"font-weight",
"text-align",
"text-justify",
"text-indent",
"text-overflow",
"text-decoration",
"white-space",
"color",
"background",
"background-position",
"background-repeat",
"background-size",
"background-color",
"background-clip",
"opacity",
"filter",
"list-style",
"outline",
"visibility",
"box-shadow",
"text-shadow",
"resize",
"transition"
],
}
}
复制代码
忽略stylelint对css的检验
忽略整个文件,在首行加入 /* stylelint-disable /
/
stylelint-disable /
html {}
复制代码
忽略多行
/
stylelint-disable /
html {}
.div {
color: red;
}
/
stylelint-enable /
复制代码
忽略一行, 在样式前加入 /
stylelint-disable-next-line */ 以忽略该行

id {

/* stylelint-disable-next-line /
color: pink !important;
}
复制代码
在 .stylelintrc.js 內设定需要忽略的文件
{
ignoreFiles: ["dist/**/
", "src/assets/scss/abc.scss"]
}
复制代码
stylelint 官网

标签:stylelint,no,color,书写,width,border,order,css
From: https://www.cnblogs.com/ellafive/p/16598041.html

相关文章

  • CSS的动画滚动效果
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content......
  • CSS预处理器的对比 — sass、less和stylus
    本文根据JohnathanCroom的《sassvs.lessvs.stylus:PreprocessorShootout》所译,整个译文带有我们自己的理解与思想,如果译得不好或不对之处还请同行朋友指点。如需转......
  • CSS选择器优先级
    HTML5学堂:CSS优先级所谓优先级是指CSS样式在浏览器中被解析的先后顺序。CSS选择器的优先级:id>class>tagname。具体我们来看看本文给大家讲解的CSS选择器优先级。什么......
  • CSS-关于display:inline、block、inline-block的差别
    什么是display(显示模式)?每一个html标签元素都会有一个预设的display属性,标签基本上大部分可分为两种显示模式,一种是行内元素(inline),另一种为区块元素(block),我们可以......
  • CSS flex 属性
    让所有弹性盒模型对象的子元素都有相同的长度,且忽略它们内部的内容: flex:1时: flex:0时:  flex:auto时: ......
  • css 伪类实现渐变线条
    如下图所示:  需要实现渐变的小竖线或者小横线可以用伪类,代码如下:div{position:relative;z-index:2;&::after{conte......
  • CSS display 属性
    display属性规定元素应该生成的框的类型。默认为inline。值为none为不显示 inline与block的区别:inline: block: display:flex 意思是弹性布局,它能够扩展和收缩......
  • css 隐藏元素
    display,visibility仅会改变元素显示,不会改变元素种类。可以配合js使用使元素可以动态的显示隐藏。可以使用display或visibility实现html元素的隐藏功能,但......
  • 2.如何用一行Css实现10种现代布局
    1.超级居中place-items:center 首先指定grid作为display方法,然后在同一个元素上写入place-items:center。place-items是同时设置align-items和justify-ite......
  • CSS实现单行与多行文字截断
    <style>main{width:100%;display:flex;flex-direction:column;align-items:center;}p{width:329px;text-align:justify;......