好程序员分享如何看待CSS中BEM的命名方式?-创新互联

   好程序员 分享 如何看待 CSS 中 BEM 的命名方式 ?BEM 的意识就是块 (block) 、元素 (element) 、修饰符 (modifier) ,是由 yandex 团队提出的一种 CSS Class 命名方法。

目前创新互联建站已为近千家的企业提供了网站建设、域名、网络空间、绵阳服务器托管、企业网站设计、个旧网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

  任何一个东西的存在都有其存在的道理,如果他毫无价值,那么肯定会被淘汰,后人可能都不了解,甚至都不会出现在后人的世界里。

  关于 BEM 命名其大的争议就是其命名风格,它鼓励一级一级的写的非常具体,但是会很长。如此常的命名会影响书写效率,名称过长代码量就会增多,文件体积就会变大 ( 在 gzip 下这个不算是个问题 ) ,从而会影响传输速度,用户体验度就低,但是作为一个职业人我们都不能单纯把个人喜好和习惯作为借口来拒绝或否定其用途。

  风格对于使用者来说并不是很重要,关键的是看其效果。正所谓人们常说的 “不看疗程,看疗效”。

  从扩展性上来看,嵌套过多阅读性差,超过 3 层就很难阅读了 ; 嵌套越多,选择器的层级也会随之增多,那么性能不知不觉就会变差 ; 如此长的名字,书写上想冲突都难。

  从编程原则上来说,这种命名方式不会暴露抽象类。假如样式变了需要继承另一个抽象类,不需要改 HTML ,只需要改 css 即可。

  团队开发中,风格无非是一种形式,可以约束人们达到一定程度上的统一。内部沟通会极大降低沟通成本。

  BEM 命名的方法虽然有自身的不足之处,但至少他可以使我们命名的时候达到一定的统一,我们可以学习其优秀的方面将其纳为己用。在实际项目开发中将其巧妙而又灵活的运用起来也未尝不是一件坏事。


分享文章:好程序员分享如何看待CSS中BEM的命名方式?-创新互联
转载来于:http://ybzwz.com/article/dddosi.html