BEM规范

BEM规范,即Block(块)Element(元素)Modifier(修饰器),用来规范css命名

命名约定模式如下:

.block{}
.block__element{}
.block__element--modifier{}

对于块,若多个单词,则用 - 连接,如search-form

具体例子

  • 块即模块,如搜索表单search-form,可以看做一个块
  • 这个块内的按钮button、输入框input,为元素
  • 元素可以有多种状态,如居中按钮,即修饰
<form class="search-form">
    <input class="search-form__input"/>              //元素
    <button class="search-form__button"></button>    //元素
    <button class="search-form__button--primary"></button>    //修饰
</form>

看起来确实规范多了,且可读性强,但有没有发现一个问题,class的命名有点长,如果最外层还有class的话,那命名就更长了,这就又涉及到css嵌套层数的问题。

在编写代码时,应尽量控制css嵌套层级不超过3层,其次,在使用BEM规范时,应根据具体代码变通,可做适当的优化。

css样式顺序

以前都是想到什么,就直接在样式后面添加,很随意,但看起来也很乱。

后来经过同事建议,重新去看了css书写顺序,发现好的样式顺序,不仅看起来清晰,居然还可以提升浏览器渲染DOM的性能

推荐顺序

  1. 定位属性:position display float left top right bottom overflow clear z-index
  2. 自身属性:width height margin padding border background
  3. 文字样式:font-family font-size font-style font-weight font-varient color
  4. 文本属性:text-align vertical-align text-wrap text-transform text-indent text-decoration letter-spacing word-spacing white-space text-overflow
  5. css3中新增属性:content box-shadow border-radius transform……

当然,也不是非要按照这个顺序来,每个项目应该都有统一的规范,按照规范就行。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前端开发规范指的是在进行前端开发工作时,遵循一定的规范和标准,以保证代码的可读性、可维护性和可扩展性。以下是关于前端开发规范的一些要点,供参考: 1. HTML规范:使用语义化标签,保证网页结构清晰,同时遵循标签嵌套规则和缩进对齐规范; 2. CSS规范:使用合理的命名规范,遵循BEM或其他规范,避免使用ID选择器,尽量使用类选择器,并避免使用 !important; 3. JavaScript规范:使用恰当的命名规范,采用驼峰拼写法,避免使用全局变量,减少全局污染,使用严格模式; 4. 文件组织规范:按模块划分文件,将HTML、CSS、JS等文件分别放置在对应的目录中,保持文件的结构清晰; 5. 编码规范:统一缩进使用4个空格或一个制表符,命名要有意义,避免使用拼音命名或简拼,注释要清晰明了,使用英文注释; 6. 图片规范:针对图片进行压缩,采用正确的格式,避免过多的图片请求,使用CSS sprite或者iconfont来优化图标的引用; 7. 兼容性规范:确保页面在不同浏览器和设备上都能正常展示和使用,做好浏览器兼容性测试和适配工作; 8. 性能优化规范:压缩和合并CSS、JS文件,采用异步加载或延迟加载的方式加载资源,优化页面性能和加载速度; 9. 安全规范:防止XSS攻击、CSRF攻击等安全问题,对用户输入进行过滤和验证,确保系统的安全性; 10. 版本控制规范:使用Git等版本控制工具进行代码管理,定期提交代码并进行分支管理,方便团队协作和代码回溯。 以上是前端开发规范的一些常见要点,遵循这些规范可以提高前端开发效率,减少bug,提高代码质量。建议可以在实际开发中参考相应的规范,并根据团队和项目的实际情况进行必要的调整和完善。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值