我的朋友 Lindsay Grizzard 撰写了关于跨组织创建 CSS 系统的文章,以及在启动新项目时需要牢记的所有事项
让其他开发人员和设计师使用标准化规则至关重要。 在启动项目时,请从一开始就让开发人员了解您的 CSS、JS 甚至 HTML 约定。 及早且频繁地开会,讨论您有兴趣使用的每个库、框架、思维模型和 gem,并认真对待反馈。 简而言之,如果他们绝对讨厌 BEM 并拒绝编写它,就不要使用 BEM。 您可以探索使用 linter 来解决此问题,但强迫人们使用他们讨厌的命名约定不会让您的工作更容易。 希望您能够说服他们为什么额外的下划线很有用,但找到一个每个人都将参与某种类型的系统的中间地带是当务之急。
我完全同意,这里我指出的重要一点是,所有这些工作都是一个协作过程,在创建可扩展且连贯的样式系统时,妥协至关重要。 至少根据我的经验,很容易带着所有写好的规则和准备实施的新指南走进一个房间,但这最终都不会奏效。
Ethan Marcotte 在一篇名为 Weft 的文章中对 Lindsay 的帖子进行了评论,并描述了为什么这并不总是成功的方法
这里只是大方向,但我感觉我们的行业倾向于颠倒 Lindsay 的模型:我们通常首先确定解决问题的技术方案,然后再了解其更广泛的背景。 换句话说,我认为我们常常专注于设计或构建元素,而没有研究它应该连接到的其他元素——没有理解它所在的系统。