Skip to content

css module VS styled component(cssinjs) #145

@dlrandy

Description

@dlrandy

Atomic css

又名functional css,是一种css架构,推崇基于视觉功能的小的单一目的的类名
https://acss.io/
https://css-tricks.com/lets-define-exactly-atomic-css/

普通的css容易命名冲突,从而样式冲突

冲突的解决就是讲样式的作用于限制在特定的环境中
BEM可以避免这种冲突;

BEM这种相当于手动隔离作用域;

其实可以将作用域的创建或者命名空间的创建交给语言

css Modules自动化命名样式的操作,但是需要一些设置,过于工程化,相比使用BEM可以不进行任何设置

styled component不需要babel、webpack等工具 但是需要在运行时引入lib,增加了js的bundle size。

styled component在基于底层的tocken和设计模式的时候,有助于创建更灵活的component;
css module可以在不适用BEM的情况下写全局或者特定页面的css

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions