Socket
Socket
Sign inDemoInstall

css-shorthand-properties

Package Overview
Dependencies
0
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    css-shorthand-properties

A simple list of CSS shorthand properties and which longhand properties they expand to


Version published
Weekly downloads
805K
decreased by-1.82%
Maintainers
1
Install size
11.9 kB
Created
Weekly downloads
 

Changelog

Source

1.1.1 - 2018-07-17

Fixed

  • Added missing background-position shorthand. (#5)

Readme

Source

CSS Shorthand Properties

A simple way to list all shorthand CSS properties and which properties they expand to.

I tried to search for an existing simple list but couldn't find one, so I trawled through the various W3C CSS specs and collated the data.

Only specs that are Candidate Recommendations or better are counted, with the exception of some Working Drafts that have a lot of traction in browser implementations. So far the WD specs included here are Animation and Transitions.

Usage

Available on npm as css-shorthand-properties, or in the browser as a global called cssShorthandProps

Properties

shorthandProperties

The core data as a simple JS object. Each key is a CSS shorthand property. Each value is a compacted list of CSS properties that the shorthand expands to.

There is a convenience method (listed below) that means you shouldn’t need to access this list directly, but it’s available for other use cases.

Methods

isShorthand
  • Returns a boolean indicating if a CSS property is a shorthand.
  • Parameters:
    • property (String) Shorthand property to expand.
  • Returns: Boolean
cssShorthandProps.isShorthand('border');  // true
cssShorthandProps.isShorthand('display');  // false
expand
  • Takes a CSS shorthand property and returns a list of longhand properties.
  • Parameters:
    • property (String) Shorthand property to expand.
    • recurse (Boolean – optional, default false) If true, each longhand property will also be run through expand(). This is only useful for the border property.
  • Returns: Array with a list of longhand properties that the given property expands to. If the property is not a shorthand, the array contains only the original property.
// Standard usage
cssShorthandProps.expand('list-style');
// ['list-style-type', 'list-style-position', 'list-style-image']

// Non-shorthand properties return themselves in an array
cssShorthandProps.expand('color');
// ['color']

// Using 'border' in normal mode...
cssShorthandProps.expand('border');
// ['border-width', 'border-style', 'border-color']

// ...but the border properties are also shorthands
cssShorthandProps.expand('border-width');
// ['border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width']

// Using 'border' with recursion returns an array of arrays
cssShorthandProps.expand('border', true);
/*
[
  ['border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width'],
  ['border-top-style', 'border-right-style', 'border-bottom-style', 'border-left-style'],
  ['border-top-color', 'border-right-color', 'border-bottom-color', 'border-left-color']
]
*/

Licence

MIT: https://gilmoreorless.mit-license.org/

Keywords

FAQs

Last updated on 17 Jul 2018

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