2.8.0 • Published 1 year ago

stylelint-declaration-block-no-ignored-properties v2.8.0

Weekly downloads
59,836
License
MIT
Repository
github
Last release
1 year ago

stylelint-declaration-block-no-ignored-properties

NPM version Build Status contributions welcome Downloads per month

Original rule: stylelint/declaration-block-no-ignored-properties.

Disallow property values that are ignored due to another property value in the same rule.

a { display: inline; width: 100px; }
/**                  ↑
 *       This property */

Certain property value pairs rule out other property value pairs, causing them to be ignored by the browser. For example, when an element has display: inline, any further declarations about width, height and margin-top properties will be ignored. Sometimes this is confusing: maybe you forgot that your margin-top will have no effect because the element has display: inline, so you spend a while struggling to figure out what you've done wrong. This rule protects against that confusion by ensuring that within a single rule you don't use property values that are ruled out by other property values in that same rule.

The rule complains when it finds:

  • display: inline used with width, height, margin, margin-top, margin-bottom, overflow (and all variants).
  • display: list-item used with vertical-align.
  • display: block used with vertical-align.
  • display: flex used with vertical-align.
  • display: table used with vertical-align.
  • display: table-* (except table-caption) used with margin.
  • display: table-* (except table-cell) used with padding.
  • display: table-* (except table-cell) used with vertical-align.
  • display: table-(row|row-group) used with width, min-width or max-width.
  • display: table-(column|column-group) used with height, min-height or max-height.
  • float: left and float: right used with vertical-align.
  • position: static used with top, right, bottom, left or z-index.
  • position: absolute used with float, clear or vertical-align.
  • position: fixed used with float, clear or vertical-align.
  • list-style-type: none used with list-style-image.
  • overflow: visible used with resize.

Installation

npm install stylelint-declaration-block-no-ignored-properties --save-dev

Usage

// .stylelintrc
{
  "plugins": [
    "stylelint-declaration-block-no-ignored-properties"
  ],
  "rules": {
    "plugin/declaration-block-no-ignored-properties": true,
  }
}

Options

true

The following patterns are considered violations:

a { display: inline; width: 100px; }

display: inline causes width to be ignored.

a { display: inline; height: 100px; }

display: inline causes height to be ignored.

a { display: inline; margin: 10px; }

display: inline causes margin to be ignored.

a { display: block; vertical-align: baseline; }

display: block causes vertical-align to be ignored.

a { display: flex; vertical-align: baseline; }

display: flex causes vertical-align to be ignored.

a { position: absolute; vertical-align: baseline; }

position: absolute causes vertical-align to be ignored.

a { float: left; vertical-align: baseline; }

float: left causes vertical-align to be ignored.

The following patterns are not considered violations:

a { display: inline; margin-left: 10px; }
a { display: inline; margin-right: 10px; }
a { display: inline; padding: 10px; }
a { display: inline-block; width: 100px; }

Although display: inline causes width to be ignored, inline-block works with width.

a { display: table-cell; vertical-align: baseline; }

Although display: block causes vertical-align to be ignored, table-cell works with vertical-align.

a { position: relative; vertical-align: baseline; }

Although position: absolute causes vertical-align to be ignored, relative works with vertical-align.

xcc-standard-stylelint@she11sh0cked/stylelint-config@vividcat/broomstylelint-config-dxynoodles-normiamnewton-stylelint-configplum-fabricstylelint-config-pack@dlwlrma/ngx-linter-formattereslint-plugin-shoplazzasimple-antd-management-fast-frameworkke-tools-lint@zrf9018/marvel-cli@furdzik/stylelint-configzhouhaifei-code-style@jingjing20/stylelintthe-front-lintyewill-test-lint@infinitebrahmanuniverse/nolb-stylelint-d@giotramu/stylelint-config@sherry-standard/stylelint-config-sherryvul-configsfiber-lint@everything-registry/sub-chunk-2842@acmuta-research/stylelint-config@scrawllife/fabricstylelint-miszocode-fabrictenantcloud-stylelint-configwetrial-linttf-lint-config-app@craftworks/stylelint-config-angular@craftworks/stylelint-config-craftworks@cyber-walrus/stylelint-config@cyzeal/lint-config-lib@design-systems/stylelint-config@doremijs/stylelint-config@bundy-lmw/magic_script@bybit/marvel-fabric@powerfulyang/lint@rokku/fabric@roothub/fabricjoylint-confjumai-code-style@theholocron/stylelint-configcy-styleluoshen@handsomewolf/stylelint-config@detra-lab/stylelint-config@dlwlrma/stylelint-configkifor-stylelint-configstylelint-config-copilot-pluginsstylelint-config-craftworksstylelint-config-foxsportsstylelint-config-css-prettierstylelint-config-custom-chlstylelint-config-fencestylelint-config-digiitstylelint-config-jwilssonstylelint-config-jyfe-basestylelint-config-iamnewtonstylelint-config-goodbyte-styleguidestylelint-config-kamisamastylelint-config-osedeastylelint-config-mixupstylelint-config-mrtnvhstylelint-config-lokistylelint-config-mxcinsstylelint-config-nake-appstylelint-config-neoncitylightsstylelint-config-akrcstylelint-config-antstylelint-config-atzuchestylelint-config-ccbstylelint-code-quality-configstylelint-config-xostylelint-config-udyuxstylelint-config-wcdstylelint-config-silverwindstylelint-config-testgdstylelint-config-strict-modestylelint-config-strict-scssstylelint-config-styled-friendlystylelint-config-rrzujistylelint-config-saiichihashimotostylelint-config-so-prettystylelint-config-spaceninjastylelint-config-qbestylelint-config-resourgestylelint-config-pavostylelint-config-robolearystylelint-config-robwstylelint-plugin-standardsprint-scriptsumi-lint@alza54/stylelint-config-scss@aoviz/lint@artworks/lint@anolilab/stylelint-config@asurraa/sura-ui-teamouy
2.8.0

1 year ago

2.7.0

2 years ago

2.6.0

3 years ago

2.5.0

4 years ago

2.4.0

4 years ago

2.3.0

5 years ago

2.2.0

6 years ago

2.1.0

6 years ago

2.0.0

6 years ago

1.1.0

7 years ago

1.0.2

7 years ago

1.0.1

8 years ago

1.0.0

8 years ago