通用的 CSS 命名惯例

在参与规模庞大、历时漫长、且参与人数众多的项目时,要确保每一行代码都像是同一个人编写的;这就要求所有开发者,都遵守相同的代码规范。在先前的文章前端项目开发规范意见,从宏观角度,对前端开发提出了些许建议。本问就 “CSS 命名“这一普遍性难题,做下探讨。

通用规则

  • 保持 CSS 易于维护;
  • 保持代码清晰易懂;
  • 保持 CSS 的可拓展性;

为实现这一目标,无数仁人志士,贡献了大量的方案,如 CSS 预处理、CSS Framework(tailwindcss)、Postcsscss-modules、以及 CSS 命名规范(BEM)等等;但是否能达成目标,还是得取决于写代码的人;有挑选性整理一些 CSS 代码规范,以供参考:

通用 CSS 命名

文本命名规范

名称 描述
index.css 一般用于首页建立样式
head.css 头部样式,当多个页面头部设计风格相同时使用
base.css 共用样。
style.css 独立页面所使用的样式文件
global.css 页面样式基础,全局公用样式,页面中必须包含
layout.css 布局、版面样式,公用类型较多时使用
module.css 模块,用于产品类页,也可与其它样式配合使用
master.css 主要的样式表
columns.css 专栏样式
themes.css 主体样式
forms.css 表单样式
mend.css 补丁,基于以上样式进行的私有化修补

页面结构命名

名称 描述
page 代表整个页面,用于最外层
wrap 外套,将所有元素包在一起的一个外围包,用于最外层
wrapper 页面外围控制整体布局宽度,用于最外层
container 一个整体容器,用于最外层
head,header 页头区域,用于头部
nav 导航条
content 内容,网站中最重要的内容区域,用于网页中部主体
main 网站中的主要区域(表示最重要的一块位置),用于中部主体内容
column 栏目
sidebar 侧栏
foot,footer 页尾、页脚。网站一些附加信息放置区域

功能命名

名称 描述
logo 标记网站logo标志
banner 标语、广告条、顶部广告条
login 登录
loginbar 登录条
register 注册
tool, toolbar 工具条
search 搜索
searchbar 搜索条
searchlnput 搜索输入框
shop 功能区,表示现在的
icon 小图标
label 商标
homepage 首页
subpage 二级页面子页面
hot 热门热点
list 文章列表
scroll 滚动
tab 标签
sitemap 网站地图
msg 或 message 提示信息
current 当前的
joinus 加入
status 状态
btn 按钮
tips 小技巧
note 注释
guild 指南
arr, arrow 标记箭头
service 服务
breadcrumb 即页面所处位置导航提示
download 下载
vote 投票
siteinfo 网站信息
partner 合作伙伴
link, friendlink 友情链接
copyright 版权信息
siteinfoCredits 信誉
siteinfoLegal 法律信息

导航命名

名称 描述
nav, navbar, navigation 导航条或导航包
topnav 顶部导航
mainbav 主导航
subnav 子导航
sidebar 边导航
leftsidebar 左导航
rightsidebar 右导航
title 标题
summary 摘要
menu 菜单
submenu 子菜单
drop 下拉
dorpmenu 下拉菜单
links 链接菜单

来源: https://quickapp.lovejade.cn/generic-css-naming-convention/

通用CSS命名惯例的更多相关文章

  1. 通用CSS命名规范

    一.文件命名规范 样式文件命名主要的 master.css布局,版面 layout.css专栏 columns.css文字 font.css打印样式 print.css主题 themes.css [/ ...

  2. CSS代码命名惯例语义化的方法

    CSS代码的命名惯例一直是大家热门讨论的话题.今天暴风彬彬想通过分析一个流行三栏布局中的必要元素,来为大家讲解关于使用语义化方法替代结构化方法来命名CSS类的建议和指导. 您还可以参考彬Go的相关文章 ...

  3. (转)面向属性的CSS命名

    原文链接:戳这里 自从开始做前端开发以来,我发现在开发页面的时候,总是有一个问题十分影响自己的开发效率,这个问题就是css的命名,主要是指css类选择器的命名.这个问题主要体现在:第一,有的内容你压根 ...

  4. 面向属性的CSS命名

    自从开始做前端开发以来,我发现在开发页面的时候,总是有一个问题十分影响自己的开发效率,这个问题就是css的命名,主要是指css类选择器的命名.这个问题主要体现在:第一,有的内容你压根想不出用什么名字来 ...

  5. 精简高效的css命名准则

    对于css,为了避免样式冲突,我们总会赋予相当特殊的命名,或是在选择符上添加html标记,或是使用层级.我们为避免在冲突上做文章,就会把代码的命名变得复杂化. 如果css的重用性越高,相比就越高效.如 ...

  6. html,css命名规范 (转)

    HTML+CSS命名规范总结 1.HTML部分 1.1添加必须的utf-8的字符集,并且使用HTML5的简洁 方式: <meta charset="utf-8"> 1. ...

  7. 常用的css命名规则

    头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:left rig ...

  8. [css] 【转载】 精简高效的CSS命名准则/方法

    原文链接:http://www.zhangxinxu.com/wordpress/2010/09/%E7%B2%BE%E7%AE%80%E9%AB%98%E6%95%88%E7%9A%84css%E5 ...

  9. CSS命名实践

    前面的话 每次写HTML结构涉及到CSS命名时,都要挣扎一番.关于CSS命名的规范,市面上有不少,如OOCSS.SMACSS.BEM和MVCSS等.在这里面最火的应该算BEM了.本文将详细介绍CSS命 ...

  10. 知乎网的CSS命名规律研究

    笔者是一名Java程序员,前端css和图片本不是我的工作,亦不是我的强项.但很多时候,公司并没有合适的美工,只有自己动手.一般的css技术,倒是没有问题,定位,盒子,浮动,布局等等,都能做.但每每完成 ...

随机推荐

  1. (0617 ) centos7运行脚本提示: 没有那个文件或目录 :No such file or directory

    https://blog.csdn.net/hehuihh/article/details/88174007 之前也 遇到: https://www.cnblogs.com/fancy2333/p/1 ...

  2. Eclipse设置背景色等

    1.设置背景色 a.Window->Preferences->General->Editors->Text Editors b.选择Background color选择自定义颜 ...

  3. Linux上面配置Apache2支持Https(ssl)具体方案实现

    虽然Nginx比较流行,但是由于一些老项目用到了Apache2来支持Web服务,最近想给服务上一个Https支持,虽然看似教程简单,但是也遇到一些特殊情况,经历了一番折腾也算是解决了所有问题,将过程记 ...

  4. vscode远程连接服务器出现Bad owner or permissions on .ssh/config

    vscode远程连接服务器出现Bad owner or permissions on C:\\Users\USER\.ssh/config 过程试图写入的管道不存在, 原因是vscode的remoto ...

  5. java的集合以及数据结构

    一.集合 1.介绍 红色为接口 蓝色为实现类 2.三种遍历方式 迭代器 增强for lambda表达式 Integer[] arr = col.toArray(new Integer[col.size ...

  6. okHttp3源码简要分析

    首先看一下使用, public static void main(String[] args) throws IOException { OkHttpClient client = new OkHtt ...

  7. 【1】java之类与对象

    一.前言 面向对象就是一种组件化的设计思想. 面向对象特性 封装性:保护内部的定义结构安全性: 继承性:在已有的程序结构上继续扩充新的功能: 多态性:在某一个概念范围内的满足. 二.类与对象的定义和使 ...

  8. 2022.11.09 NOIP2022 模拟赛六

    科学 Source:CF461C Appleman and a Sheet of Paper,*2200. 注意到对于 \(p\le \lfloor \frac {now}{2}\rfloor\),直 ...

  9. Job for nfs-server.service failed because the control process exited with error code. See "systemctl status nfs-server.service" and "journalctl -xe" for details.

    问题: 解决:

  10. 软件离线许可(License)实现原理

    我们经常使用各种开发软件,比如IntelliJ IDEA.Navicat.Visual Studio等,这些软件都有一个特点,就是要收费.一般是我们需要去购买一个许可,然后输入这个许可到软件里就能够使 ...