Discuzx系统 CSS 编码规范、CSS属性书写顺序

DiscuzX 系统属于一款比较流行的论坛程序,前端部分的实现离不开 CSS。DiscuzX 官方提供了一份 CSS 编码规范与 CSS 属性书写顺序规范,下面是详细讲解。

CSS 编码规范

CSS 编码规范包括了一系列的书写约定,主要包括以下几个方面:

缩进规范

缩进是一种让代码更加易读的方式。DiscuzX 源码的缩进规范如下:

.selector {
    property: value;
    property: value;
}

{ 前空一格,在 } 后空一行, {} 之间每个属性前缩进一次,之后再空一格。

注释规范

注释是对代码的解释和说明,是优秀代码的一部分。DiscuzX 的 CSS 注释规范如下:

  • 块注释

块注释用于对大段或多个选择器的代码进行解释和说明,示例:

/**
 * Description
 * ----------
 * Here is a multiple selector
 * another selector
 * -------
 */

.sld, 
.slz {
    property: value;
}

注释以 /** 开始,以 */ 结束,每行注释开头有一个空格。

  • 行注释

行注释可用于对单个属性或行代码进行解释和说明,示例:

.selector {
    /* Here is comments */
    property: value; /* This is a single line comment */
}

行注释以 // 开始,之后需要有一个空格。

选择器规范

选择器的书写规范直接影响 CSS 文件的大小。DiscuzX 的选择器规范如下:

  • 连字符命名法

选择器命名以小写字母为主,并用连字符连接,如 .selector-name

  • 命名规范

选择器命名采用语义化命名,根据该类选择器的用途来命名,如 .head-title

单位规范

CSS 有多种单位,DiscuzX 推荐使用 px 作为内容尺寸单位,而将 em 用于“软件内部”(比如后台、输入框)已经适配好的部分。

媒体查询

DiscuzX 的 CSS 媒体查询如下:

@media only screen and (max-width: 767px) {
    /* Small device styles */
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    /* Medium device styles */
}
@media only screen and (min-width: 992px) {
    /* Large device styles */
}

CSS 属性书写顺序

CSS 属性的书写顺序在一定程度上影响了代码阅读效率,DiscuzX 官方提供的 CSS 属性书写顺序如下:

  1. Positioning
  2. Display & Box Model
  3. Typography
  4. Visual
  5. Other

示例一

.selector {
    position: absolute;
    top: 0;
    left: 0;
    width: 100px;
    height: 100px;
    border: 1px solid #ccc;
    background-color: #fff;
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
    color: #333;
    text-decoration: none;
}

示例二

.selector {
    display: inline-block;
    box-sizing: border-box;
    width: 80%;
    margin: 0 auto;
    padding: 10px;
    border: 1px solid #ccc;
    background-color: #f3f3f3;
    font-size: 14px;
    line-height: 1.5;
    text-align: left;
    color: #333;
    text-decoration: none;
    white-space: normal;
}

希望以上规范能够对你的开发实践有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Discuzx系统 CSS 编码规范、CSS属性书写顺序 - Python技术站

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

相关文章

  • javascript基础知识之html5轮播图实例讲解(44)

    下面是“javascript基础知识之html5轮播图实例讲解(44)”的详细攻略。 标题 本文主要介绍如何使用JavaScript实现HTML5轮播图,包含代码实现和一些关键点的讲解。 简介 轮播图是现代网页设计中常见的一种效果,它可以让网站更加生动和互动,提高用户体验。HTML5提供了一种实现轮播图的新方法——使用<canvas>元素和Jav…

    css 2023年6月10日
    00
  • vue多个元素的样式选择器问题

    对于 Vue 多个元素的样式选择器问题,可以采用以下两种方法进行解决: 方法一:为元素绑定 class 或 style 对象 经典的 CSS 选择器,例如 div>p 可以方便地选择元素,但是在 Vue 中,由于组件模板的限制,不能使用这种方式。为了解决这一问题,我们可以通过给元素绑定 class 或 style 对象来实现类似的选择器效果。 举个例子…

    css 2023年6月9日
    00
  • 左边固定宽右边自适应的6种方法

    针对“左边固定宽右边自适应的6种方法”,以下是详细的攻略: 一、使用float属性 通过给左边固定宽的元素设置浮动属性float: left,并给右边自适应的元素设置margin-left和overflow:hidden属性,就可以达到目的。 示例代码: <div class="container"> <div clas…

    css 2023年6月10日
    00
  • css3 transform及原生js实现鼠标拖动3D立方体旋转

    下面是我对“CSS3 transform及原生js实现鼠标拖动3D立方体旋转”的攻略和示例说明。 CSS3 transform的使用 CSS3 transform是一项用于修改元素视觉呈现的CSS属性,它可以实现旋转、平移、缩放等效果。下面我们来看一下如何利用CSS3 transform实现一个3D旋转的立方体。 HTML结构 我们需要定义一个HTML结构,…

    css 2023年6月10日
    00
  • Js实现无刷新删除内容

    下面我来详细讲解一下 “Js实现无刷新删除内容” 的完整攻略。 1. 背景知识 在学习完该攻略之前,需要先掌握以下内容: Ajax(Asynchronous JavaScript and XML),即异步的JavaScript与XML。通过Ajax可以在页面无需刷新的情况下,实现异步获取数据,并且局部更新网页内容。 jQuery的Ajax实现方法,可以参考官…

    css 2023年6月10日
    00
  • CSS去掉A标签(链接)虚线框的方法

    下面是详细讲解 CSS 去掉 A 标签虚线框的方法的完整攻略: 1. 为什么需要去掉 A 标签的虚线框? 在标准的 Web 开发中,当用户使用键盘 Tab 键切换页面元素时,浏览器会默认给 A 标签添加一个蓝色虚线框,用来提示当前的焦点元素。这个提示虚线框可以帮助一些视障用户更好地理解网页结构,提高网站的可访问性。但是,对于一些时尚/高端的网站设计,这个默认…

    css 2023年6月10日
    00
  • html5构建触屏网站之touch事件介绍

    针对“html5构建触屏网站之touch事件介绍”的完整攻略,我将从以下几个方面进行详细讲解: Touch事件介绍 Touch事件类型 Touch事件属性 示例说明 1. Touch事件介绍 在html5中,为了支持触屏设备,引入了Touch事件。 Touch事件是一种与鼠标和键盘事件相对应的一种输入方式,用于描述在触摸屏上手势的各种行为,例如单指单击、双指…

    css 2023年6月10日
    00
  • CSS常用样式之绘制双箭头的示例代码

    下面是关于“CSS常用样式之绘制双箭头的示例代码”的细致讲解,包含了两个示例说明。 1. 思路分析 绘制双箭头需要用到CSS的伪元素:::before 和 ::after,双箭头效果就是将一个箭头嵌套在另一个箭头的里面,通过旋转和透明度调整位置达到叠加的效果。因此,我们需要设计两个箭头,一个外层箭头,一个内层箭头,并且通过CSS动画实现旋转和透明度变化。 2…

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