CSS 命名管理 之 BEM】的更多相关文章

好吧,将 BEM 简单的解释为 “Block-Element-Modifier“, 其实是个不负责任的做法.鬼知道 Block 是什么啊?所以,看了一些似懂非懂的中文解释之后,自己还是得去找些英文来读一读,顺便总结一下. 本人对 HTML.JavaScript.CSS 其实都只是一知半解,所以,如果有理解不到位的,还望各位看官斧正.但是,本着“要学就要学最先进”的原则,即使是基础不扎实,还是要冲着更有效率的方式前进. 有不想看我罗嗦的看官,可以直接看下面这篇文档: https://css-tri…
css的缺陷 我们知道,css使用中一个比较令人烦恼的问题,就是css没有作用域可言,我们写了一个组件或者模块之后,往往希望它们可以四处复用,但是由于css没有作用域,我们给样式命名的时候都会非常小心,因为害怕命名重复导致组件的样式被覆盖.于是,每个新加入项目的开发者在开发类似已有的组件时,很可能就自己重新命名一份新的样式表,以免和现有的重复,那么就会导致css文件像滚雪球一样越来越大. 现在市面上有许多旨在减少CSS代码量,且方便程序员合作和维护CSS代码的方案,例如OOCSS.SMACSS.…
时间:2016-11-04 20:04:53 原文地址:https://github.com/zhongxia245/blog/issues/48 一.背景 挺早就听说过BEM了,也大概的知道怎么用,但是具体 BEM 指啥,具体有啥要求,还不是很清楚,然后今天就学习了下. 二.BEM(Block,Element,Modifier) BEM的意思就是块(block).元素(element).修饰符(modifier),是由Yandex团队提出的一种前端命名方法论.这种巧妙的命名方法让你的CSS类对…
整理自:前端早读课[第1183期]这些 CSS 命名规范,将省下你大把调试时间 试图解决 3 类问题: 仅从名字就能知道一个 CSS 选择器具体做什么 从名字能大致清楚一个选择器可以在哪里使用 从 CSS 类的名称可以看出它们之间的联系 不知你是否见过这样的类名: .nav--secondary { ... } .nav__header { ... } 这就是 BEM 命名规范. 这个火柴人代表了一个组件,比如说一个设计区块. BEM 这里的 B 意为『区块』('Block'). 在实际中,这里…
CSS 命名规范总结 BEM 命名给 CSS 以及 html 提供清晰结构,命名空间提供更多信息,模块化提高代码的重用,以达到 CSS 命名语义化.可重用性高.后期维护容易.加载渲染快的要求. 首先,这是一篇仅对 CSS 命名的总结,更多 CSS 规范请参考规范文档.其次 CSS 命名并无对错之分,只是不同的命名方式和代码的优雅程度与后期维护有着密切关系. @iamdevloper pic.twitter.com/4SRgVDDaiC — Saeed Prez (@SaeedPrez) 2016…
CSS命名规范一 js中对变量的命名最好使用camel case驼峰式命名法,但CSS中更适用于red-box命名规范. CSS命名规范二 BEM命名规范 B=>block E=>element M=>modifier 1.组件的子组件 用两条下划线命名 stick-man__head 2.对组件的修饰 用两条短线命名 stick-man--red 3.与js代码有关的 用js-开头命名 js-stick-man 4.使用属性 用属性名命名 [rel='js-stick-man']…
随着CSS的发展,使用CSS有语义化的命名约定和CSS层的分离,将有助于它的可扩展性,性能的提高和代码的组织管理.著作权归作者所有. BEM本质应该是一个css命名方案,最流行的命名规则之一就是BEM,(block:块,Element:元素,Modifier:修饰符),通过给每个元素添加它的父级block模块作为前缀,使得目标的安全性变得更加简单了:BEM还有助于消除页面和body类对嵌套或者附加样式依赖:BEM是一个非常有用,强大和简单的命名规范,使您的前端代码更容易阅读和理解,更容易使用,更…
在项目的开发过程当中, 我们往往因为日益复杂的css代码而感到力不从心. 如何合理的组织css代码成为了我们前端开发过程中必须考虑到的环节. 在读element源代码的时候, 了解到了BEM的命名风格. 使用 BEM 命名规范,理论上讲,每行 css 代码都只有一个选择器.BEM代表 "块(block),元素(element),修饰符(modifier)",我们常用这三个实体开发组件.在选择器中,由以下三种符号来表示扩展的关系: - 中划线 :仅作为连字符使用,表示某个块或者某个子元素…
HTML+CSS命名规范总结 1.HTML部分 1.1添加必须的utf-8的字符集,并且使用HTML5的简洁 方式: <meta charset="utf-8"> 1.2遵循xhtml1.0规则 1)所有标签必须结束 2)所有标签必须小写 3)标签属性必须使用成对引号(单引号或双引号) 4)标签属性必须有值: 5)所有特殊符号必须转义 1.3标签属性命名规范 Id:连接符命名法"hello-world" Class:连接符命名法"hello-w…
css命名 传统网站页面(企业级),大概就是about,product,register等,他们的名字较好区分,他们的样式整体也不会很大,用简单的驼峰法就够了,或者简单的模块. 非传统企业页面,命名驼峰法不够用,项目一当大了,会有多个首页 就拿新浪的页面来说,它的体育块的所有页面,完全可以单独出一个项目,单独有一个单独的样式库. 根据这个原则,业主方电梯管家,小区贴吧,投票等等,如果单独做成一个css文件style,那么这个文件的样式无限庞大,你又为了避免css选择器的冲突,你又不得添加不同cs…