前端开发规范

本文档详细阐述了前端开发中的HTML、CSS和JavaScript规范,包括代码规范、注释规范、图片规范、命名规范以及JS语言规范。HTML规范涵盖团队约定、编码规则和元素标签的闭合;CSS规范涉及选择器、属性、注释和媒体查询;图片规范讨论了不同格式的选择和大小优化;命名规范明确了目录、图片和类名的命名规则;JS规范包括语言规范、代码风格和变量声明。整体旨在提升代码质量和可维护性。
摘要由CSDN通过智能技术生成

HTML 规范

代码规范

团队约定

HTML 文件必须加上 DOCTYPE 声明,统一使用 HTML5 的文档声明:

<!DOCTYPE html>

页面语言 LANG

推荐使用属性值cmn-Hans-CN(简体,中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用zh-CN属性值

<html lang="zh-CN">

CHARSET

HTML5 中默认的字符编码是 UTF-8

团队约定:一般情况下统一使用“UTF-8"编码

<meta charset="UTF-8">

由于历史原因,有些业务可能会使用 "GBK"编码

<meta charset="GBK">

请尽量统一写成标准的"UTF-8",不要写成"utf-8"或"utf8"或“UTF8"。根据IETF对UTF-8的定义,其编码标准的写法是"UTF-8";

元素及标签闭合

HTML 元素共有一下 5 种:

  • 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr
  • 原始文本元素:script、style
  • RCDATA元素:textarea、title
  • 外来元素:来自MathML命名空间的SVG命名空间的元素
  • 常规元素:其他HTML允许的元素都被称为常规元素

元素标签的闭合应遵循以下原则:

  • 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。
  • 某些元素的开始和结束标签是可以省略的,如果规定标签不能被省略,那么就绝对不能省略它。
  • 空元素只有一个开始标签,且不能为空元素设置结束标签。
  • 外来元素可以有一个开始标签和配对的结束标签,或则只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。

为了能让浏览器更好地解析代码以及能让代码有更好的可读性,有如下约定:

  • 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签和结束标签的元素亦都要写上。
  • 空元素标签都不加"/"字符。

推荐:

<div>
    <h1>我是h1标题</h1>
    <p>我是一段文字,我有始有终,浏览器能正确解析</p>
</div>

<br>

不推荐:

<div>
    <h1>我是h1标题</h1>
    <p>我是一段文字,我有始无终,浏览器能正确解析
</div>

<br/>

HTML 代码大小写

HTML 标签名、类名、标签属性和大部分属性值统一用小写

推荐:

<div class="demo"></div>

不推荐:

<div class="DEMO"></div>

<DIV CLASS="DEMO"></DIV>

HTML 文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合

<!-- 优先使用 IE 最新版本和 Chrome Frame -->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>

<!-- HTML文本内容 -->
<h1>I AM WHAT I AM </h1>

<!-- JavaScript 内容 -->
<script type="text/javascript">
	var demoName = 'demoName';
	...
</script>
	
<!-- CDATA 内容 -->
<script type="text/javascript"><![CDATA[
...
]]></script>

属性类型

不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含

推荐:

<link rel="stylesheet" href="" >
<script src=""></script>

不推荐:

<link rel="stylesheet" type="text/css" href="" >
<script type="text/javascript" src="" ></script>

元素属性

  • 元素属性值使用双引号语法
  • 元素属性值可以写上的都写上

推荐:

<input type="text">
	
<input type="radio" name="name" checked="checked" >

不推荐:

<input type=text>	
<input type='text'>
	
<input type="radio" name="name" checked >

特殊字符引用

文本可以和字符引用混合出现。这种写法可以用来转义在文本中不能合法出现的字符。

在 HTML 中不能使用小于号”<“和大于号”>"特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体

推荐:

<a href="#">more&gt;&gt;</a>

不推荐:

<a href="#">more>></a>

代码缩进

统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)

纯数字输入框

使用type="tel"而不是type="number"

<input type="tel">

代码嵌套

元素嵌套规范,每个块状元素独立一行,内联元素可选

推荐:

<div>
    <h1></h1>
    <p></p>
</div>	
<p><span></span><span></span></p>

不推荐:

<div>
    <h1></h1><p></p>
</div>	
<p> 
    <span></span>
    <span></span>
</p>

段落元素与标题元素只能嵌套内联元素

推荐:

<h1><span></span></h1>
<p><span></span><span></span></p>

不推荐:

<h1><div></div></h1>
<p><div></div><div></div></p>

注释规范

标准写法:

<!--Comment Text-->

错误的写法:

<!-->The Wrong Comment Text-->

<!--->The Wrong Comment Text-->

<!--The--Wrong--Comment Text-->

<!--The Wrong Comment Text--->

单行注释

一般用于简单的描述,如某些状态描述、属性描述等

注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行

推荐:

<!-- Comment Text -->
<div>...</div>

不推荐:

<div>...</div><!-- Comment Text -->	
	
<div><!-- Comment Text -->
    ...
</div>

模块注释

一般用于描述模块的名称以及模块开始与结束的位置

注释内容前后各一个空格字符,<!-- S Comment Text -->表示模块开始,<!-- E Comment Text -->表示模块结束,模块与模块之间相隔一行

推荐写法:

<!-- S Comment Text A -->	
<div class="mod_a">
    ...
</div>
<!-- E Comment Text A -->
	
<!-- S Comment Text B -->	
<div class="mod_b">
    ...
</div
本文阐述软件项目开发和管理的流程规范,作为软件项目开发的高级指引,本规范定义了软件开发的各个阶段以及每个阶段的工作活动和工件,但不对活动和工件的细节作过多规定。在项目开发过程中,每个项目根据自身的需要确定这些活动和工件的细节。这个阶段的工作目的是决定一个项目是否需要启动。为了达到这个目的,首先要明确项目的总体战略目标,对项目的需要建立认同。即确定到底需要做什么、开发什么产品或提供什么服务,以及需要解决什么样的问题和需要满足客户或市场的什么要求等,同时还要总结项目工作的范围、所需资源、大约开支、各种风险,以及该项目不执行的其他替代选择等。这些代表了对整个项目目标从战略角度和宏观层次所进行的分析,通过项目的意向书总结出来,由此确证客户或项目发起人和赞助者的要求与期望,并帮助他们判定项目是否上马。项目意向总结书的通过及项目被批准上马形成了这个项目的起始点。 前一篇文章《软件开发基本原则》谈论了软件开发原则方面的问题,而本篇文章尝试谈谈软件开发中更具体的一些内容 —— 普通软件项目的开发过程规范。本座也知道,如果过程规范讲的太具体对谈论者来说是非常冒险的一件事情,它不像技术,对就对错就错,有一个客观的评判标准,别人想喷你也得自己先好好研究等拿到了足够的论据才能喷,但开发过程和项目管理就不同了,别人仅凭一点点所谓的管理经验甚至是主观推断就能喷得你体无完肤,摇摇欲坠 ~ 因为没有什么所谓的事实标准与放之四海皆有效的软件开发过程和项目管理方法。保守估计,100个人中至少有150种想法。本座也深知其中的凶险,因此避重就轻,从基本原理谈起,宏观的角度阐述相关问题,尽量减少中弹的机会。欢迎大家畅所欲言 ^_*
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值