Socket
Socket
Sign inDemoInstall

stylelint-declaration-block-no-ignored-properties

Package Overview
Dependencies
111
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    stylelint-declaration-block-no-ignored-properties

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


Version published
Weekly downloads
113K
increased by22.16%
Maintainers
1
Install size
17.9 kB
Created
Weekly downloads
 

Readme

Source

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.

Keywords

FAQs

Last updated on 26 Dec 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc