3 ms·
You can use JavaScript to extend CSS, to make it a higher-level language and _more_ declarative. CSS has live-updating variables in it which can be set and re-s
by err4nt 8y ago
You can use JavaScript to extend CSS, to make it a higher-level language and _more_ declarative. CSS has live-updating variables in it which can be set and re-set from CSS, from HTML, and also in realtime from JavaScript. This means we can also include concepts from Reactive Programming and expose the streams of data directly to CSS in ways it can harness for styling purposes.
You can also extend selectors and at-rules in ways that allow you to define new, custom features, supported by JavaScript, and utilized from valid CSS stylesheets.
Given all this power and flexibility, you can go a long way toward turning CSS into the "styling language of your dreams". When you're extending CSS you also get to pick all the naming you work with as well.
Rather than trying to replace CSS, or abstract CSS away, it turns out the friendliest solution is to start with valid CSS and continue building on top it from there.
Check this out for more information about how to extend valid CSS with JavaScript: https://github.com/tomhodgins/caffeinated-style-sheets https://github.com/tomhodgins/caffeinated-style-sheets