csstate

Simple library for handling different css states and properties. Made for testing css related things with mocha or something like this.

Usage no npm install needed!

<script type="module">
  import csstate from 'https://cdn.skypack.dev/csstate';
</script>

README

CSState

Simple dynamic CSS style handling tool.

Build Status Coveralls npm version license Standard - JavaScript Style Guide

Installation

npm i --save-dev csstate

Usage

  var CSSTate = require('csstate');
  var cst = new CSSTate();

  cst.rule({
    'body': {
      'font-size': '18px'
    }
  });

  cst.exit();

Check out How to test DOM elements with CSSTate tutorial.

Features

Create/modify rules

rule(selector, property, value)

rule(object)

Remove rules

remove(selector)

remove(selector, proprery)

remove(object) - remove specified properties

remove(object, true) - remove by selectors, executes remove(selector) for each selector inside of the object.

Remove stylesheet

exit()

Usage in tests

  beforeEach(() => {
    cst.rule(defaultRules); // Load default rules
  });

  afterEach(() => {
    cst.exit(); // Remove entire stylesheet
  });

See the example.

License

MIT (c) 2017 Svetlana Linuxenko