JSS-cssinjs 介绍
JSS 是一种比 CSS 更强大的抽象,它使用 JavaScript 以声明和可维护的方式描述样式。它是一个高性能的 JS to CSS
编译器,可在运行时和服务器端运行。它是低级别并且与框架无关的,大约有 6KB 大小,并且可以通过插件 API 进行扩展。
主要特性
-
框架无关
使用场景
Demo
import jss from 'jss' import preset from 'jss-preset-default' import color from 'color' // One time setup with default plugins and settings. jss.setup(preset()) const styles = { button: { fontSize: 12, '&:hover': { background: 'blue' } }, ctaButton: { extend: 'button', '&:hover': { background: color('blue') .darken(0.3) .hex() } }, '@media (min-width: 1024px)': { button: { width: 200 } } } const {classes} = jss.createStyleSheet(styles).attach() document.body.innerHTML = ` <button class="${classes.button}">Button</button> <button class="${classes.ctaButton}">CTA Button</button> `
生成结果
<head> <style> .button-123456 { font-size: 12px; } .button-123456:hover { background: blue; } .ctaButton-789012 { font-size: 12px; } .ctaButton-789012:hover { background: red; } @media (min-width: 1024px) { .button-123456 { min-width: 200px; } } </style> </head> <body> <button class="button-123456">Button</button> <button class="ctaButton-789012">CTA Button</button> </body>
JSS-cssinjs 官网
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。