通用的 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. springboot启动类剔除扫描某个包

    // 排除api中不引数据库导致的报错包 @ComponentScan(excludeFilters = { @ComponentScan.Filter(type = FilterType.REGEX ...

  2. esp8266 -rtos-sdk-vscode-config

    kiteconfig 工作区配置文件:hello_world.code-workspace {      "folders": [         {             &q ...

  3. 用Bootstrap设计后端页面模板

    <!doctype html><html lang="zh-CN"> <head> <meta charset="utf-8&q ...

  4. 学习-Vue2-Vue实例-数据与方法-Object.freeze()

    Object.freeze(),会阻止修改现有的property,意味着响应系统无法再追踪变化 代码示例: <!DOCTYPE html> <html lang="en&q ...

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

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

  6. gl-ar750 配置

    镜像下载https://docs.gl-inet.com/en/3/release_notes/gl-ar750/设置sd卡安装软件https://openwrt.org/docs/guide-use ...

  7. Oracle 存储过程4:PL/SQL动态执行DDL语句

  8. iOS新建项目基础设置

    我们新建项目工程的时候一般都需要配置些基本设置,以下是我整理的一些基础配置 一:  pch文件的设置     pch:预编译头文件,这个文件会被编译存储在一个缓存空间,并自动有且只有一次包含在每个文件 ...

  9. unity animation instance

    animation instance piti6/UnityGpuInstancedAnimation https://github.com/piti6/UnityGpuInstancedAnimat ...

  10. echarts的bug

    Uncaught Error: Invalide sourceFormat: unknown at assert (util.js:404:15) at mountMethods (dataProvi ...