Skip to main content

block-closing-brace-empty-line-before

Require or disallow an empty line before the closing brace of blocks.

a {
color: pink;
/* โ† */
} /* โ†‘ */
/** โ†‘
* This line */

The fix option can automatically fix all of the problems reported by this rule.

Options#

string: "always-multi-line"|"never"

always-multi-line#

The following patterns are considered violations:

a {
color: pink;
}

The following patterns are not considered violations:

a {
color: pink;
}
a { color: pink; }

never#

The following patterns are considered violations:

a {
color: pink;
}

The following patterns are not considered violations:

a {
color: pink;
}
a { color: pink; }

Optional secondary options#

except: ["after-closing-brace"]#

When a rule is nested, after-closing-brace brace will reverse the primary option.

For example, with "never" and except: ["after-closing-brace"]:

The following patterns are considered violations:

@media print {
a {
color: aquamarine;
}
}
@supports (animation-name: test) {
a {
color: aquamarine;
}
}
@keyframes test {
100% {
color: aquamarine;
}
}

The following patterns are not considered violations:

@media print {
a {
color: aquamarine;
}
}
@font-face {
font-family: "MyFont";
src: url("myfont.woff2") format("woff2");
}
@supports (animation-name: test) {
a {
color: aquamarine;
}
}
@keyframes test {
100% {
color: aquamarine;
}
}

For example, with "always-multi-line" and except: ["after-closing-brace"]:

The following patterns are considered violations:

@media print {
a {
color: aquamarine;
}
}
@supports (animation-name: test) {
a {
color: aquamarine;
}
}
@keyframes test {
100% {
color: aquamarine;
}
}

The following patterns are not considered violations:

@media print {
a {
color: aquamarine;
}
}
@font-face {
font-family: "MyFont";
src: url("myfont.woff2") format("woff2");
}
@supports (animation-name: test) {
a {
color: aquamarine;
}
}
@keyframes test {
100% {
color: aquamarine;
}
}