rule-empty-line-before
Require or disallow an empty line before rules.
a {}
/* ← */
b {} /* ↑ */
/** ↑
* This line */
This rule ignores rules that are the very first node in a source.
The fix
option can automatically fix all of the problems reported by this rule.
Options
"always"
There must always be an empty line before rules.
{
"rule-empty-line-before": "always"
}
The following patterns are considered problems:
a {} b {}
a {}
b {}
The following patterns are not considered problems:
a {}
b {}
"never"
There must never be an empty line before rules.
{
"rule-empty-line-before": "never"
}
The following patterns are considered problems:
a {}
b {}
The following patterns are not considered problems:
a {} b {}
a {}
b {}
"always-multi-line"
There must always be an empty line before multi-line rules.
{
"rule-empty-line-before": "always-multi-line"
}
The following patterns are considered problems:
a {
color: red;
}
b {
color: blue;
}
The following patterns are not considered problems:
a {
color: red;
}
b {
color: blue;
}
"never-multi-line"
There must never be an empty line before multi-line rules.
{
"rule-empty-line-before": "never-multi-line"
}
The following patterns are considered problems:
a {
color: red;
}
b {
color: blue;
}
The following patterns are not considered problems:
a {
color: red;
}
b {
color: blue;
}
Optional secondary options
except
{ "except": ["array", "of", "options"] }
"after-rule"
Reverse the primary option for rules that follow another rule.
Given:
{
"rule-empty-line-before": ["always", { "except": ["after-rule"] }]
}
The following patterns are considered problems:
a {}
b {}
The following patterns are not considered problems:
a {}
b {}
"after-single-line-comment"
Reverse the primary option for rules that follow a single-line comment.
Given:
{
"rule-empty-line-before": [
"always",
{ "except": ["after-single-line-comment"] }
]
}
The following patterns are considered problems:
/* comment */
a {}
The following patterns are not considered problems:
/* comment */
a {}
"inside-block-and-after-rule"
Reverse the primary option for rules that are inside a block and follow another rule.
Given:
{
"rule-empty-line-before": [
"always",
{ "except": ["inside-block-and-after-rule"] }
]
}
The following patterns are considered problems:
@media {
a {}
b {}
}
The following patterns are not considered problems:
@media {
a {}
b {}
}
"inside-block"
Reverse the primary option for rules that are inside a block.
Given:
{
"rule-empty-line-before": ["always", { "except": ["inside-block"] }]
}
The following patterns are considered problems:
a {
color: red;
& b {
color: blue;
}
}
The following patterns are not considered problems:
a {
color: red;
& b {
color: blue;
}
}
"first-nested"
Reverse the primary option for rules that are nested and the first child of their parent node.
Given:
{
"rule-empty-line-before": ["always", { "except": ["first-nested"] }]
}
The following patterns are considered problems:
@media {
a {}
b {}
}
The following patterns are not considered problems:
@media {
a {}
b {}
}
ignore
{ "ignore": ["array", "of", "options"] }
"after-comment"
Ignore rules that follow a comment.
Given:
{
"rule-empty-line-before": ["always", { "ignore": ["after-comment"] }]
}
The following patterns are not considered problems:
/* comment */
a {}
"first-nested"
Ignore rules that are nested and the first child of their parent node.
Given:
{
"rule-empty-line-before": ["always", { "ignore": ["first-nested"] }]
}
The following patterns are not considered problems:
@media {
a {}
b {}
}
"inside-block"
Ignore rules that are inside a block.
Given:
{
"rule-empty-line-before": ["always", { "ignore": ["inside-block"] }]
}
The following patterns are not considered problems:
@media {
a {}
}
@media {
a {}
b {}
}