sistyl
Simple JSON-to-CSS style sheet library
Last updated 3 years ago by goto-bus-stop .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install sistyl 
SYNC missed versions from official npm registry.

sistyl

Simple JSON-to-CSS style sheet library.

NPM

Usage

const sistyl = require('sistyl')

let st = sistyl({

  '.selector': {
    'color': '#111',
    'background': '#333',

    '.larger': { 'font-size': '125%' }
  },

  '.hidden': { 'display': 'none !important' }

})

// #111 on a #333 background is kind of hard to read…
st.set('.selector', { 'color': '#eee' })

st.toString()
/* →
 * .selector {
 *   color: #eee;
 *   background: #333;
 * }
 *
 * .selector .larger {
 *   font-size: 125%;
 * }
 *
 * .hidden {
 *   display: none !important;
 * }
 */

API

let st = sistyl(rulesets={})

Creates a sistyl object with an optional default bunch of rulesets.

st.set(selector, properties)

Sets some CSS properties for a selector. properties can contain nested rulesets as objects or sistyl instances. Properties are merged if the selector already exists.

st.set('.selector', {
  'background': 'pink',
  '.nested': { 'background': 'orange' }
})

st.set(rulesets)

Adds rulesets. Takes an object where keys are selectors and values are css properties, or a sistyl instance, just like in st.set(selector, properties).

st.unset(selector)

Removes a ruleset. Takes a CSS selector, and removes the associated ruleset. Note that it removes just the given selector, and not other rulesets that also match the selector. Specifically, .unset('.rem') does not remove a .keep, .rem selector.

st.unset(selector, property)

Removes a property from a ruleset. The same notes apply as above: only properties on the exact selector string will be removed.

st.toString()

Returns the CSS string for this sistyl object. Rulesets are separated by a newline, and are indented by two spaces.

.selector {
  background: pink;
}

.selector .nested {
  background: orange;
}

License

MIT

Current Tags

  • 2.0.0                                ...           latest (3 years ago)

10 Versions

  • 2.0.0                                ...           3 years ago
  • 1.0.0                                ...           5 years ago
  • 0.4.2                                ...           6 years ago
  • 0.4.1                                ...           6 years ago
  • 0.4.0                                ...           6 years ago
  • 0.3.0                                ...           6 years ago
  • 0.2.2                                ...           6 years ago
  • 0.2.1                                ...           6 years ago
  • 0.2.0                                ...           6 years ago
  • 0.1.0                                ...           6 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (1)
Dev Dependencies (1)
Dependents (1)

Copyright 2014 - 2017 © taobao.org |