Duplicate properties are not allowed within a block Open
background: linear-gradient(to bottom, $gradient-color 0%, transparent 100%);
- Read upRead up
- Exclude checks
No Duplicate Properties
Rule no-duplicate-properties
will enforce that duplicate properties are not allowed within the same block.
Options
-
exclude
:[array of property names to be excluded from this rule]
(defaults to empty array[]
)
Examples
When enabled, the following are disallowed:
.foo {
margin: 0 0 15px;
margin: 0;
}
Exclude
When a property is added to the exclude array as shown below then you may place duplicate properties immediately after one another, this is to prevent accidental duplication of properties.
no-duplicate-properties:
- 1
-
exclude:
- display
When display
is added to the exclude array the following would be allowed:
.display-block {
display: flex;
display: inline-block;
float: right;
}
When display
is added to the exclude array the following would still be disallowed as the duplicate properties are separated by another property:
.display-block {
display: flex;
float: right;
display: inline-block;
}
Vendor prefixes should not be used Open
background: -webkit-linear-gradient(top, $gradient-color 0%, transparent 100%);
- Read upRead up
- Exclude checks
No Vendor Prefixes
Rule no-vendor-prefixes
will enforce that vendor prefixes are not allowed to be used.
List of prefixes affected by default: * webkit * moz * ms
Options
-
additional-identifiers
:[array of additional prefixes to check for]
(defaults to empty array[]
) -
excluded-identifiers
:[array of prefixes to exclude checking for]
(defaults to empty array[]
) -
ignore-non-standard
:true
:false
(defaults tofalse
)
Examples
When enabled, the following are disallowed:
@-webkit-keyframes anim {
0% { opacity: 0; }
}
.ms-block {
-ms-hyphenate-limit-lines: no-limit;
}
::-moz-placeholder {
content: '';
}
.foo {
-webkit-transition: none;
}
.bar {
position: -moz-sticky;
}
Additional Identifiers
When additional-identifiers
contains a custom prefix value of khtml
as show below
no-vendor-prefixes:
- 1
-
additional-identifiers:
- khtml
The following would now also be disallowed
.baz {
position: -khtml-sticky;
}
Excluded Identifiers
When excluded-identifiers
contains currently disallowed prefix values such as webkit
and moz
as show below
no-vendor-prefixes:
- 1
-
excluded-identifiers:
- webkit
- moz
The following would now be allowed
@-webkit-keyframes anim {
0% { opacity: 0; }
}
::-moz-placeholder {
content: '';
}
.foo {
-webkit-transition: none;
}
.bar {
position: -moz-sticky;
}
While the following would remain disallowed
.ms-block {
-ms-hyphenate-limit-lines: no-limit;
}
Ignore Non Standard
ignore-non-standard
is an option that allows you to specify whether only standard properties from our properties list should be affected by this rule or if any prefixed property / element should be affected.
When ignore-non-standard
is set to false
the following are disallowed, when ignore-non-standard
is set to true
the following are allowed:
html {
-webkit-tap-highlight-color: $link-color-hover;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto;
}