Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including siphon-media-query with all npm packages installed. Try it out:

var siphonMediaQuery = require("siphon-media-query")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

siphon-media-query v1.0.0

Extract media query-specific rules from CSS


Extract media query-specific CSS from a stylesheet. Used by the Foundation for Emails web inliner to separate general CSS from media query-specific CSS. Inspired by media-query-extractor, the main difference being this library works as a pure API.


npm install siphon-media-query --save


The parse function takes in a CSS string and gives you back a CSS string.

To extract all media queries:

var parse = require('siphon-media-query');

var input = `
  .foo { color: red; }

  @media { .bar { color: dodgerblue; } }

parse(input); // => @media { .bar { color: dodgerblue; } }

To extract only CSS from a specific media query:

var input = `
  @media (min-width: 400px) {
    .foo { color: red; }

  @media (min-width: 800px) {
    .bar { color: dodgerblue; }

parse(input, '(min-width: 800px)');
// =>
// @media (min-width: 800px) {
//   .bar { color: dodgerblue; }
// }

Local Development

git clone
cd siphon-media-query
npm install
npm test
RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free