全国服务热线:400-6136-679

位置:天津达内IT培训学校 > 学校动态 > web前端学习 享css模块化方案

web前端学习 享css模块化方案

来源:天津达内IT培训学校时间:2022/5/23 15:32:05

   css的模块化方案可能和js的一样多,下面简单介绍几种主要的模块方案。

  oocss

  面对对象的规则,主要的原则是两种:分离结构和外观,分离容器和内容。

  名词解释

  1、分离结构和外观:增加可重复的设计单元,同时去推进产品和ui对这方面的思考,比如下面的css使用时对象模式的命名和模块化规则。

  2、分离容器和内容:指的是样式的使用不以元素位置匹配,在任何位置你都可以使用这个样式,如果你不适用这个样式,会保持默认的样式。

  实例

  // dom结构

  标题

  // 模块的标记 标识

  .toggle{

  }

  // 皮肤样式的写法,如果基本结构是一样的,你可以用complex的一个辅助样式

  .toggle.simple{

  }

  // 是否做嵌套写法 相信很多预处理器的部分会支持嵌套 然后很多人会这样写,不被推荐的

  .toogle{

  .toogle-control{

  }

  .toogle-details{

  }

  }

  // 其实你会这样组织么 不是很建议 这样会降低查询效率 如果能确认性的时候 其实直接写子即可

  .toogle{}

  .toogle-control{}

  .toogle-details{}

  smacss

  sma和oocss有很多类似之处,但区分的地方有很多,主要是对样式的分类。分别是:基础、布局、模块、状态、主题

  基础

  可以适用于任何位置,我也称全局样式

  布局

  主要是用来实现不同的特色布局,提高布局的复用率,

  模块

  设计中的模块化,可重复使用的一个单元,一般是dom+css的耦合绑定。

  状态

  描述在特定状态下的布局或者模块的特殊化表现,在dom结构不变的情况下,可以通过css的皮肤化实现样式的改版。

  主题

  与状态相比更加定制的是,我们会针对有些特殊的模块,进行主题的设置,包括一系列的颜色、尺寸、交互等进行重度设计,参数化设计。

  案例

  // dom结构

  标题

  与oocss相比,其实大部分设计思路是一样的,以一个类作为css的作用域(作用域就是两个限制,1 不符合场景时限制禁止使用 2 符合场景时要正确的使用),另外的区别就是针对皮肤和状态的不同书写规则。

  bem

  bem就是块、元素、修饰符的思维去写样式。它不涉及具体的css结构,只是建议你如何命名css.

  案例

  // dom结构

  标题

  解释

  1、块级:所属组件的名称

  2、元素:元素在组件里的名称

  3、修饰符:任何与元素修饰相关的类

  这种命名方式的缺点,样式名会很长,但实际上在smacss以及oocss中都会一定程度的使用,命名很语义化,在不清楚模块时,我们可以根据样式名得出对应的结构可能是如何的。

  选择合适的方案

  无论哪种方案,关键是哪种是较合适团队的,我们目前的方式是:bem和smacss集合的方式。

领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/2346/news/528575/违者必究! 以上就是天津达内IT培训学校 小编为您整理 web前端学习 享css模块化方案的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-6136-679