• 前端菜鸟一般不知道css可以这样命名


    遇到问题

    团队开发中css的命名冲突

    为css的命名而绞尽脑汁

    css的命名五花八门

    解决方案

    使用规范:BEM

    BEM是一种CSS命名规范。

    BEM代表 “块(block),元素(element),修饰符(modifier)”]

    eg:

    .list__item_active{}

    __ 双下划线:双下划线用来连接块和块的子元素

    _ 单下划线:单下划线用来描述一个块或者块的子元素的一种状态

    实例对比

    //通常我写法

          

    • 光明之子
    •     

    • 冥王之子

    .box{}

    .box .item{}

    .box .item.active{}

    ================================

    ================================

    //BEM写法

        

            

    • 光明之子
    •       

    • 冥王之子

    .box{}

    .box__item{}

    .box__item_active{}

    总结

    1.命名冲突

    因为子元素不是单独的一个命名,而是包含了他的父级元素,这样命名冲突就降低了很多

    【就像我们读书的时候:一个学校加"李伟"的人有多个,但是如果没有前缀修饰,就不知道是哪个"李伟",但是如果加上班级,一班的李伟和二班的李伟,这样就很好的解决了冲突】

    2.命名有了规范,开发人员命名起来就简单一些

    【就像我们要写年终总结,给你模板和不给你模板,两个一对比就很明显了】

    3.结构逻辑,易于阅读

    有了规范,我们直接看类名是不是就能知道元素的

    4.css查找层级明显减少

    【之前可能需要四五级的查找,现在直接一个类名就可以,是不是提升了css解析的效率】

  • 相关阅读:
    计算机毕业设计springboot基于springboot和vue的音乐网站gk1c4源码+系统+程序+lw文档+部署
    2785. 将字符串中的元音字母排序
    Linux 环境部署
    场景应用:用SpringBoot手写一个登录拦截器
    Koa2基础笔记
    微服务必须要有的组件和必须要考虑的问题
    Open3D (C++) 泊松重建
    Pr:音频和视频的同步
    BD个人总结
    Qtreeview改变当前节点的名称
  • 原文地址:https://blog.csdn.net/qq_35577655/article/details/128049231