Code Monkey home page Code Monkey logo

css-style-guide's People

Contributors

lencioni avatar ljharb avatar mikefowler avatar zhangjd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

css-style-guide's Issues

关于这篇规范的延伸阅读

最近我关注了不少前端规范类的资料,这篇文章是其中一篇,本意是希望毕业工作后能多写点规范代码,顺便就投稿到前端外刊评论。译文发表之后,又收到了不少补充的意见,因此收集整理如下。如果译文和以下资料的收集对你有所帮助,欢迎点个 Star 再走哈~

大漠老师的补充

黄玄老师的 Slides

kmokidd 老师的意见

  • 个人感觉选择器也好、命名规范也好,都很依赖于项目的性质,有的时候项目可提取的组件多,用BEM的方式可能会更可取。如果看到xxx规范,不管自己的项目状况就去遵循,也是件挺傻的事情。

贺师俊老师的反对意见

  • 为后代选择器和ID选择器而辩护
  • OOCSS、 SMACSS、 BEM、MVCSS你们在用哪个作基础? - 贺师俊的回答 - 知乎
  • 实际上这份东西里有许多自相矛盾的地方。比如如果你真的要重用,提取成mixin就好了。class并不是用来重用css的,class是用来重用对语义的细化的,样式/行为都是附带效果而已。这也说明了,js要用不同的class这条是扯淡。
  • 如果这个语义,同时需要样式和行为,那当然应该共享相同的class。至于在维护中遇到的问题,得找到真正的原因。真正的原因恰恰是,js行为被勾在了不恰当的class上,比如.primary-button只是表达这是一个主按钮,但是每个主按钮的行为当然是不一样的。所以你需要单独的id/class(或者其他属性如data-xxx-action之类的)来勾行为。绝大多数时候,复用id就可以了。但是因为不要用id的教条,导致程序员随手找了个恰好在那里的class挂上去。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.