好程序员分享如何看待CSS中BEM的命名方式?

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

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

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

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

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

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

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

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

相关文章
相关标签/搜索