css中如何实现模块化-创新互联

css中如何实现模块化?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

为洞口等地区用户提供了全套网页设计制作服务,及洞口网站建设行业解决方案。主营业务为网站设计、成都做网站、洞口网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

oocss

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

名词解释

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

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

实例

// dom结构

  
    标题
  
  
// 模块的标记 标识
.toggle{
}
// 皮肤样式的写法,如果基本结构是一样的,你可以用complex的一个辅助样式
.toggle.simple{
}
// 是否做嵌套写法 相信很多预处理器的部分会支持嵌套 然后很多人会这样写,不被推荐的
.toogle{
 .toogle-control{
 }
 .toogle-details{
 }
}
// 其实你会这样组织么 不是很建议 这样会降低查询效率 如果能确认性的时候 其实直接写子即可
.toogle{}
.toogle-control{}
.toogle-details{}

smacss

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

基础

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

布局

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

模块

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

状态

描述在特定状态下的布局或者模块的特殊化表现,这里我觉得要推荐下《css禅意花园》,在dom结构不变的情况下,可以通过css的皮肤化实现样式的改版。

主题

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

案例

// dom结构

  
    标题
  
  

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

bem

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

案例

// dom结构

  
    标题
  
  

解释

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

关于css中如何实现模块化问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


分享名称:css中如何实现模块化-创新互联
文章出自:http://hbruida.cn/article/cogeps.html

其他资讯