CSS中的类命名

CSS类名在开发中一般都是简单的命名一下,例如 nav、title、menu 等等,但是这也带来了问题,出现命名冲突的时候不知道是哪里引起的,加上 CSS 本身权重的问题就更加棘手。如果是小项目,代码不多、开发人员较少还可以控制,一旦项目的代码增多、人员增多,查问题就很耗时,同时即使查到问题也改不动,不知道是不是会影响项目的其他页面或者功能。有时为了尽快解决问题,尤其是交付类项目,就会用!important或者行内样式进行妥协,这就为以后的维护带来了更大的隐患。
CSS 中有一种命名方式叫 BEM,我的理解就是模块化或者说是命名空间,块–元素–状态,很好理解可以看以下例子,__(双下划线)代表子元素,–代表状态或者修饰:

<form class="site-search  full">
    <input type="text" class="field">
    <input type="Submit" value ="搜索" class="button">
</form>

用了 BEM 后

<form class="site-search  site-search--full">
    <input type="text" class="site-search__field">
    <input type="Submit" value ="搜索" class="site-search__button">
</form>

显而易见,用了 BEM 后,对于开发人员,通过类名就可以确定该类的具体作用。但是同样也会带来问题,就是命名太过复杂,每次起名字就要很多时间,可能在项目开发中很难落地。有一种方式是可以通过 BEM 对组件进行命名,例如site-search__button,利用工具类实现状态效果,例如 bg-blue。工具类也可以选用比较成熟的库,例如Bootstrap 或者 Tailwind。

相关推荐

  1. CSS命名

    2024-04-12 20:00:04       34 阅读
  2. CSS超链接4种伪

    2024-04-12 20:00:04       59 阅读
  3. 如何使用 CSS :root 伪选择器

    2024-04-12 20:00:04       41 阅读
  4. css3 和伪元素

    2024-04-12 20:00:04       23 阅读
  5. PyTorch模块、和函数命名和调用

    2024-04-12 20:00:04       50 阅读
  6. css3有哪些伪

    2024-04-12 20:00:04       38 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-12 20:00:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-12 20:00:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-12 20:00:04       87 阅读
  4. Python语言-面向对象

    2024-04-12 20:00:04       96 阅读

热门阅读

  1. WPF 跨线程-Dispatcher:详解与示例

    2024-04-12 20:00:04       37 阅读
  2. C++Book对象数组初始化

    2024-04-12 20:00:04       35 阅读
  3. SpringBoot多数据源配置及使用

    2024-04-12 20:00:04       36 阅读
  4. AcWing 791. 高精度加法——算法基础课题解

    2024-04-12 20:00:04       40 阅读
  5. UI设计需要学习什么?我们应该掌握什么软件?

    2024-04-12 20:00:04       38 阅读
  6. 命名实体识别模型和分词的不同

    2024-04-12 20:00:04       36 阅读
  7. 相同地域云服务器间内网通信配置

    2024-04-12 20:00:04       36 阅读
  8. 13. 重要知识点Linux中线程

    2024-04-12 20:00:04       30 阅读
  9. Linux启动配置

    2024-04-12 20:00:04       41 阅读
  10. sql 之 索引

    2024-04-12 20:00:04       43 阅读