Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

postcss-rem

Package Overview
Dependencies
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

postcss-rem

PostCSS plugin to use rem units with optional pixel fallback.

  • 3.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2.1K
increased by6.72%
Maintainers
1
Weekly downloads
 
Created
Source

postcss-rem Node.js CI

PostCSS plugin to use rem units with optional pixel fallback. Based on sass-rem.

Breaking change in 3.0: changed default function name to rem-convert as CSS now use rem() for calculating the remainder.

See also: startijenn-rem, vanilla JavaScript version.

Example

Input

.demo {
  font-size: rem-convert(24px); /* Simple */
  padding: rem-convert(5px 10px); /* Multiple values */
  margin: rem-convert(10px 0.5rem); /* Existing rem */
  border-bottom: rem-convert(1px solid black); /* Multiple mixed values */
  box-shadow: rem-convert(
    0 0 2px #ccc,
    inset 0 0 5px #eee
  ); /* Comma-separated values */
  text-shadow: rem-convert(1px 1px) #eee, rem-convert(-1px) 0 #eee; /* Alternate use */
}

Output

.demo {
  font-size: 1.5rem; /* Simple */
  padding: 0.3125rem 0.625rem; /* Multiple values */
  margin: 0.625rem 0.5rem; /* Existing rem */
  border-bottom: 0.0625rem solid black; /* Multiple mixed values */
  box-shadow: 0 0 0.125rem #ccc, inset 0 0 0.3125rem #eee; /* Comma-separated values */
  text-shadow: 0.0625rem 0.0625rem #eee, -0.0625rem 0 #eee; /* Alternate use */
}

Options

With baseline to 10 (html { font-size: 62.5%; }) and fallback to true:

.demo {
  font-size: 24px;
  font-size: 2.4rem; /* Simple */
  padding: 5px 10px;
  padding: 0.5rem 1rem; /* Multiple values */
  margin: 10px 5px;
  margin: 1rem 0.5rem; /* Existing rem */
  border-bottom: 1px solid black;
  border-bottom: 0.1rem solid black; /* Multiple mixed values */
  box-shadow: 0 0 2px #ccc, inset 0 0 5px #eee;
  box-shadow: 0 0 0.2rem #ccc, inset 0 0 0.5rem #eee; /* Comma-separated values */
  text-shadow: 1px 1px #eee, -1px 0 #eee;
  text-shadow: 0.1rem 0.1rem #eee, -0.1rem 0 #eee; /* Alternate use */
}

With convert to px (for a lt-ie9 only stylesheet for example):

.demo {
  font-size: 24px; /* Simple */
  padding: 5px 10px; /* Multiple values */
  margin: 10px 8px; /* Existing rem */
  border-bottom: 1px solid black; /* Multiple mixed values */
  box-shadow: 0 0 2px #ccc, inset 0 0 5px #eee; /* Comma-separated values */
  text-shadow: 1px 1px #eee, -1px 0 #eee; /* Alternate use */
}

Usage

Install with npm i postcss-rem and use with PostCSS:

postcss([require("postcss-rem")]);

Example with custom options:

postcss([
  require("postcss-rem")({
    name: "convert-rem", // Default to 'rem-convert'
    baseline: 10,        // Default to 16
    // convert: "px",    // Default to 'rem'
    fallback: true,      // Default to false
    precision: 6,        // Default to 5
  }),
]);

See PostCSS docs for examples for your environment.

Keywords

FAQs

Package last updated on 10 Nov 2023

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc