一、OO  CSS 的概念解读

(一)众多开发者忽视了CSS的表现,认为其太过简单,是一种机械的工作,而把更多关注在JS的性能或者其他方面。

(二)OO CSS 将页面可重用元素抽象成一个类,用class 加以描述,而与其对应的html 即可看成是此类的一个实例。

二、OO CSS 的作用

(一)加强代码复用以便方面维护。

(二)减少 CSS 体积(用父类的即可)。

(三)提升渲染效率。

(四)组件库思想、栅格布局可共同、减少选择器、方面扩展。

三、OO CSS 的注意事项(使用高效CSS时需要注意的问题)

(一)不要直接定义子节点,应把共性声明放到父类。

.mod .inner {...}    // .mod 下面的 inner
.inner {...}    // 不是很建议的声明

(二)结构与皮肤相分离。

<div class="container simpleExt"></div>  //html 结构.container {...}  //控制结构的class.simpleExt {...}  //控制皮肤的class

(三)容器与内容相分离。

<div class="container"><ul><li>排行</li></ul></div> //html 结构.container ul{...}  //ul依赖了容器

<div class="container"><ul class="rankList"><li>排行</li></ul></div> //html 结构.rankList ul{...}  //解除与容器的依赖,可以从一个容器转移到其他容器

(四)抽象出可重用的元素,建好组件库,在组件库内寻找可用的元素组装页面。

(五)往你想要扩展的对象本身增加 class 而不是其父节点。

(六)对象应该保持独立性

<div class="container"><div class="mod"></div></div> //html 结构.container {...}  .container .mod {...} //控制结构的class//应该写成如下:<div class="container mod"> </div> //html 结构

(七)避免使用ID选择器,权重太高,无法重用。

(八)避免位置相关的样式

#header .container {...}#footer .container {...}
//可直接写成 .container {...}#header h1 {...}#footer h1 {...}h1,.h1 { }h2,.h2 { }<h1 class="h6"></h1>

(九)保证选择器相同的权重

(八)类名应该剪短、清晰、语义化,OO CSS 的名字并不影响html 语义化

CSS:CSS 在工程中改变——面向对象的CSS (OO CSS)相关推荐

  1. html给按钮加颜色代码,css按钮属性 html中按钮的字体颜色怎么设置?

    css 属性设置input 中type为button 的属性 css中什么属性可以控制按钮的形状 1.dispaly 适用于css1和css2,用于设置目标对象是否及如何显示.该属性的常用值为none ...

  2. Atitit.css 规范 bem  项目中 CSS 的组织和管理

    Atitit.css 规范 bem  项目中 CSS 的组织和管理 1. 什么是BEM?1 1.1. 块(Block)2 1.2. 元素(Element)2 1.3. BEM树(和DOM树类似).3 ...

  3. OO CSS(面向对象 CSS)

    面向对象的CSS OO CSS的概念解读 OO CSS的作用和注意事项 OO CSS代码实战 众多开发者忽视了CSS的表现(认为他太过简单,是一种机械的工作),而且更多关注在JavaScript的性能 ...

  4. CSS类名称/选择器中哪些字符有效?

    CSS类选择器中允许使用哪些字符/符号? 我知道以下字符无效 ,但是哪些字符有效 ? ~ ! @ $ % ^ & * ( ) + = , . / ' ; : " ? > < ...

  5. style 放入css文件失效_React中使用CSS的7种方式

    来源 | http://www.fly63.com/article/detial/1961 1.在组件中直接使用style 不需要组件从外部约会css文件,直接在组件中书写. import react ...

  6. Web 开发中 20 个很有用的 CSS 库

    在过去的几年中,CSS已经成为一大部分开发者和设计者的最爱,因为它提供了一系列功能和特性.每个月都有无数个围绕CSS的工具被开发者发布以简化WEB开发.像CSS 库,框架,应用这样的工具能够为开发者做 ...

  7. media在HTML中作用,web前端:关于css中@media的一些基本使用

    层叠样式表(英文全称:CascadingStyleSheets)是一种用来表现html(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言.css不仅可以静态地修 ...

  8. 怎样将css导入html文件中,css样式怎么导入?

    css导入样式的方法:1.使用@import导入CSS样式表.2.行内样式就是把css样式直接写在HTML标签中.3.内嵌样式主要是将样式写在标签中.4.链接样式主要是通过link标签将css文件链到 ...

  9. 如何在html添加css样式表,网页中添加CSS样式表的四种方式

    本文向大家描述一下网页中添加CSS样式表的四种方式,首先让我们来看一下CSS样式表文件的优势,主要体现在两个方面,请看下文详细介绍. CSS样式表文件的优势表现在两个方面: ***,简化了网页的格式代 ...

最新文章

  1. 三年后75%企业数据将移至云端?SAP新应用加速云服务
  2. AI 医学影像辅助诊断的商业模式分析
  3. 一款NPN三极管测量: BC547C
  4. 深度学习动手入门:GitHub上四个超棒的TensorFlow开源项目
  5. angular2页面抓取_angular2怎么获取目前高度?
  6. aop java intercept_关于 Spring3 报org.aopalliance.intercept.MethodInterceptor问题解决方法
  7. SAP License:发票校验
  8. 【2018.6.7】高一总结暑假前
  9. Java新职篇:面向对象编程的3个原则是什么?
  10. 深度学习和拓扑数据分析的六大惊人之举
  11. libpng的使用 | 在Linux系统下编译、安装与使用
  12. MySQL 集群Cluster
  13. Unity灯光渲染之自发光材质
  14. 【Unity入门计划】基本概念(1)-2D刚体Rigidbody 2D
  15. 计算机英语化工版,计算机英语(主编苏兵-化工版)教案:7 What is multimedia.doc...
  16. Android系统源码目录及功能介绍
  17. win10安装VMware死机
  18. Android 锁屏软件MemoryDebris测试报告
  19. 归因分析笔记4:PCA逆变换
  20. 万年历mysql数据库万年历宜忌数据_总说黄道吉日,万年历里的宜忌你真的看懂了吗?...

热门文章

  1. React 18 带给我们的惊喜
  2. 使用 Solid 私有化存储 IPFS 文件哈希值
  3. 数据库监控框架 oneproxy-monitor 开源了
  4. Python对文件的操作(转)
  5. 推导坐标旋转公式(转)
  6. Linux 命令(三)--用户管理
  7. HDU4462-稻草人
  8. Linux下将数据文件的指定域读取到shell脚本中
  9. Oracle 内核参数
  10. 反射学习系列3-反射实例应用