css教程:可读性可维护性良好的CSS文件

针对“css教程:可读性可维护性良好的CSS文件”的完整攻略,我将分别从以下几个方面进行讲解:

  1. 命名规范
  2. 样式结构
  3. 注释

1. 命名规范

命名规范是保证CSS文件可读性、可维护性的第一步。在命名规范上,可以根据约定俗成的方式去制定,比如以下各种情况:

  • 使用“BEM”(块、元素、修饰符)命名法:.block__element--modifier
  • 使用“OOCSS”(面向对象CSS)命名法:.module-name .submodule-name .element-name
  • 使用“SMACSS”(可扩展和模块化的CSS)命名法:.l-header .mod-is-primary

在命名规范限制下,CSS文件的结构就变得明确、易于管理。

2. 样式结构

在保证命名规范的基础上,样式结构也是非常重要的。通常情况下,可以遵循以下原则:

  • 按照页面布局进行分组。比如将header部分、nav部分、main部分依次排布
  • 一般情况下,从上到下按照选择器中的的字母顺序排列。比如@media、:hover这些伪类排列在样式最后
  • 用类来覆盖样式,避免使用!important样式

3. 注释

为了让CSS文件的可维护性变得更好,注释是必不可少的。在注释上,可以根据以下方式进行:

  • 类上方加注释,注释该类所描述的内容。如果该类有不同的交互方式,应加以分割以帮助识别
  • 描述一些意图或布局时使用,用 // 注释,保证和代码之间的偏移最大
  • 用注释说明更改,即描述新更新的元素

下面我将给出两条示例说明:

示例1:样式结构

以下是一个例子:

/* 头部
   ========================================================================== */

.site-header {
  background-color: #333;
  height: 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 30px;
}

.site-title,
.site-logo {
  margin: 0;
  font-size: 24px;
  color: #fff;
}

.site-logo img {
  height: 30px;
}

.site-nav {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
}

.site-nav__item {
  margin-left: 20px;
}

.site-nav__item a {
  color: #fff;
}

/* 正文
   ========================================================================== */

.content-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.content {
  margin-top: 40px;
  width: 80%;
  max-width: 800px;
}

.content__title {
  font-size: 36px;
  margin-bottom: 20px;
  text-align: center;
}

.content__subtitle {
  font-size: 20px;
  margin-bottom: 30px;
}

.banner-image {
  margin-bottom: 40px;
}

/* 脚部
   ========================================================================== */

.site-footer {
  background-color: #333;
  color: #fff;
  font-size: 14px;
  text-align: center;
  padding: 20px;
}

此例中,CSS样式按照页面结构进行分组,并使用注释加以标注。在样式的具体组合上,选择器按字母表顺序排列。

示例2:注释

以下是一个例子:

/* 分享图标样式
   ========================================================================== */

.share-icons {
  display: flex;
  justify-content: center;
  margin-bottom: 50px;
}

.share-icons__item {
  padding: 10px;
  border-radius: 50%;
  background-color: #222;
  margin-right: 10px;
  cursor: pointer;
}

.share-icons__icon {
  color: #fff;
  font-size: 24px;
}

/* 翻译状态
   ========================================================================== */

/* 翻译状态分为3种:未开始、正在进行、已完成 */

.content--not-started {
  opacity: 0.5;
  filter: grayscale(100%);
}

.content--in-progress {
  border: 2px solid #f8df62;
}

.content--completed {
  border: 2px solid #5cb85c;
}

此例中给出了两种注释方式,一种是针对于一个类加入注释,并且使用 ___________________________________________________________________________ 作为分割线。另一种则为会随者样式变化动态改变的注释。在这个例子中,我们给.content 添加了三种表现状态的注释,分别是未开始、正在进行、已完成,它们与时间相关。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:css教程:可读性可维护性良好的CSS文件 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • 一行代码搞定 font-size 响应式

    在网页设计中,我们经常需要对字体大小进行响应式调整,以适应不同的屏幕尺寸和设备。下面是一个完整攻略,包含了如何使用 CSS 将 font-size 响应式调整的过程和两个示例说明。 CSS 如何一行代码搞定 font-size 响应式 我们可以使用 CSS 的 calc() 函数和 vw 单位来实现一行代码搞定 font-size 响应式。下面是一个例: f…

    css 2023年5月18日
    00
  • javascript滚轮控制模拟滚动条

    下面是JavaScript滚轮控制模拟滚动条的完整攻略。 1. 目标 我们的目标是实现一个通过鼠标滚轮来控制网页中自定义滚动条的滚动的效果。具体需求包括: 鼠标滚动时,滚动条向上或向下滚动一定距离。 滚动条的位置要动态显示,并且可以通过拖动来控制滚动条位置。 滚轮滚动距离与滚动条滚动距离的比例要保持一致。 滚动条需要自适应网页高度变化。 2. 分析 为了实现…

    css 2023年6月10日
    00
  • 基于jQuery UI CSS Framework开发Widget的经验

    下面是详细讲解“基于jQuery UI CSS Framework开发Widget的经验”的完整攻略。 1. 确认jQuery UI CSS Framework版本 在开发Widget之前,需要确认使用的是哪个版本的jQuery UI CSS Framework。在开发中,建议使用最新版本,因为最新版本通常修复了已知的问题并具有最佳的性能。 2. 加载jQu…

    css 2023年6月10日
    00
  • js设置控件的隐藏与显示的两种方法

    下面是详细讲解“js设置控件的隐藏与显示的两种方法”的完整攻略。 方法一:通过display属性控制 在JS中,我们可以通过控制一个元素的style.display属性来实现控件的隐藏与显示。具体而言,我们可以通过将该属性设置为“none”来将控件隐藏起来,将该属性设置为其他值(如“block”、“inline”等)来将控件显示出来。 下面是一个具体的示例:…

    css 2023年6月10日
    00
  • 纯CSS画的基本图形(矩形、圆形、三角形、多边形、爱心、八卦等)

    下面是关于“纯CSS画的基本图形”的完整攻略。 1. 矩形 矩形是最简单的基本图形之一,可以借助CSS中的border属性来实现。通过设置不同的border-width(边框宽度)、border-style(边框样式)和border-color(边框颜色)属性,可以绘制不同样式的矩形。例如,以下代码可以绘制一个红色填充的矩形: .rectangle { wi…

    css 2023年6月9日
    00
  • 详解CSS3中常用的样式【基本文本和字体样式】

    下面我就来详细讲解 CSS3 中常用的样式基本文本和字体样式,包括字体、文本颜色、文本阴影、文字格式化、文本间距等。 字体 CSS3 中定义字体的方式有多种,其中最常见的为 font-family 属性,它用于指定元素的字体系列。常见的字体系列有 Serif、Sans-Serif、Monospace 等,如果想自定义字体系列,可以使用 @font-face …

    css 2023年6月9日
    00
  • 详解解决flex布局的justify-content: space-between对齐方式的一个BUG的两种方法

    下面我就为你详细讲解“详解解决flex布局的justify-content: space-between对齐方式的一个BUG的两种方法”的攻略。 背景 在flex布局中,justify-content: space-between是用来将元素沿主轴方向均匀分布的一种方式。但是在某些情况下,我们会发现,最后一项元素无法完全靠右对齐,这是flex布局的一个不足之…

    css 2023年6月10日
    00
  • CSS3实现渐变背景兼容问题

    请先使用以下格式的标题划分答案的主要内容: 问题背景 兼容方案 统一兼容方案 使用autoprefixer工具实现 示例说明 示例一:纵向渐变兼容 示例二:角向渐变兼容 问题背景 CSS3引入了渐变这一新的属性,能够使得网页背景更为美观,同时也方便网页设计。然而,各浏览器对这一新属性的支持程度不同,因此会引起兼容问题,尤其是在老旧的浏览器中无法正常呈现渐变效…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部