Stylelint config that sorts related property declarations by grouping together following the order:
- Positioning
- Box Model
- Typography
- Visual
- Animation
- Misc
.declaration-order {
/* Positioning */
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 10;
/* Box Model */
display: block;
float: right;
width: 100px;
height: 100px;
margin: 10px;
padding: 10px;
/* Typography */
color: #888;
font: normal 16px Helvetica, sans-serif;
line-height: 1.3;
text-align: center;
/* Visual */
background-color: #eee;
border: 1px solid #888;
border-radius: 4px;
opacity: 1;
/* Animation */
transition: all 1s;
/* Misc */
user-select: none;
}
- Add stylelint and this package to your project:
npm install --save-dev stylelint stylelint-rational-order-plugin
# or, if you prefer yarn over npm:
yarn add --dev stylelint stylelint-rational-order-plugin
- Add this package to the end of your extends array inside Stylelint configuration (.stylelintrc for example):
{
"plugins": [
"stylelint-rational-order-plugin"
],
"plugin/rational-order": true
}
Boolean, or an array of options, where the first element is true
, and the second is an options object.
true
: Enables the plugin.
false
: Disables the plugin.
Default border property belongs to the visual section "borderInBoxModel": false
. If true
border property belongs to the box model section.
This option adds an empty line between groups. Default false
.