1.4.0 • Published 4 years ago

styl-injector v1.4.0

Weekly downloads
1
License
MIT
Repository
github
Last release
4 years ago

Open Source Love npm version Downloads

Styl-Injector

Simple functionality to inject a text or object-based style sheet into your HTML document.

Installation

Use the following command:

npm i styl-injector

toCss(obj)

A very simple object-to-css converter.

Parameter(s)DescriptionOptionalDefault
toCssObject-based styleNo-

Returns: a css text.

const cssObj = {
  ".main-wrapper": { flexDirection: "row", display: "flex", flex: "1" },
  "#content": { flex: "1" },
  ul: { padding: "20px 0", flex: "1" },
  li: { fontFamily: "'Lato'", color: "whitesmoke", lineHeight: "44px" }
};

let cssText = toCss(cssObj);

The value of cssText will be equal to:

.main-wrapper {
  flex-direction: row;
  display: flex;
  flex: 1;
}
#content {
  flex: 1;
}
ul {
  padding: 20px 0;
  flex: 1;
}
li {
  font-family:'Lato';
  color: whitesmoke;
  line-height: 44px;
}

You can use css-to-js transformer to convert a CSS text to a JS object and use the result for toCss(result) directly!

There is a conventional naming approach for defining your rules. Every uppercase character will change to a hyphen and a lowercase character (XyZ => -xy-z). For example, If you want to achieve -webkit-animation you should write WebkitAnimation or flexDirection will change to flex-direction.


injectStyle(textOrObject, id, overridable, hostElement)

A functionality to inject your text or object-based style to the html document easily!

Parameter(s)DescriptionOptionalDefault
textOrObjectText style or object-based styleNo-
idTo set an id for your <style>, it helps you to update an specific style tagYes-
overridableIf set this to false, you can inject your style just onceYestrue
hostElementTo set your host element to inject your style into it. Useful for shadow DOMYesdocument.head
injectStyle(cssObj,'my-style-tag');

injectStyle(`
.main-wrapper {
  flex-direction: row;
  display: flex;
  flex: 1;
}
#content {
  flex: 1;
}
ul {
  padding: 20px 0;
  flex: 1;
}
li {
  font-family:'Lato';
  color: whitesmoke;
  line-height: 44px;
}
`,'my-style-tag');
1.4.0

4 years ago

1.3.0

4 years ago

1.2.0

4 years ago

1.2.1

4 years ago

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.0

4 years ago