html代码的书写规范是什么(简述符合web标准的HTML代码编写规范)

本文目录
简述符合web标准的HTML代码编写规范
1、统一编码UTF8
2、每一个模块进行注释,省的改(或者别人改)的时候找不着,也是个良好的习惯。
3、尽量通过外部文件引入css,减小html文档体积,有利于seo。
4、div尽量在三层以内,还是从seo方面考虑。
5、命名规范,比如“nav”“header”“footer”等,不要用一些乱七八糟的命名人家看不懂“sdfgdgf”之类的。
6、meta信息最好写完整、h1、h3标签、url绝对地址等等关于seo的问题要注意。
7、css、js、html分离全部外部文件引入,不要都写在html文件里面例如:css写在元素里面的style 或者js写在body下面这些,以后工作可能不止你一个web前端别人改你的代码很麻烦的,不要造成别人的麻烦,良好的编码习惯以后维护起来也比较方便。
问题比较宽泛,需要不断积累才能完善代码规范问题~
html代码学习规范是什么呢
第一部分:HTML整体结构
1.HTML基础设施
(1)文件应以《!DOCTYPE.....》首行顶格开始,这句话告诉浏览器这是一个什么文件,我们推荐使用《!DOCTYPE html》。
(2)必须在head元素内部的meta标签内声明文档的字符编码charset, 如:《meta charset="UTF-8"》,这句代码告诉浏览器应该此HTML文件使用的字符集是什么,如果不加此行代码,那么在浏览器中可能显示为乱码。
(3) 页面的title是极为重要的不可缺少的一项。
当我们在sublime text器中输入!并按下tab键便得到:
1
2
3
4
5
6
7
8
9
10
《!DOCTYPE html》
《html lang="en"》
《head》
《meta charset="UTF-8"》
《title》Document《/title》
《/head》
《body》
《/body》
《/html》
2.HTML代码结构和视觉顺序基本保持一致
(1).按照从上之下,从左到右的视觉顺序书写HTML结构。
(2).有时候为了便于搜索引擎抓取,我们也会将重要内容在HTML结构顺序上提前,以为搜索引擎抓取网页内容是自上而下的,所以将重要内容在HTML结构顺序上提前可便于抓取重要的内容。
(3).不要使用table布局,现在基本上被淘汰了,而应该代之以div来布局,方便控制。
3.结构、表现、行为三者分类,避免内联。
(1).使用link引入外部css文件到head中。注意:一般我们不适用@import来引入外部css文件。两者的区别可以看我的另外一篇博文《添加css的方式:link和@import的区别》。
(2).使用script将js文件引入,并置于body底部,这时js文件会最后加载,html会最先加载,用户体验会更好。(注意:并不是所有的js文件都要放置于body的底部,如当我们需要使用js文件动态修改meta元素内容时,需要
学习如何书写整洁规范的HTML标记_HTML/Xhtml_网页制作
良好的HTML代码是一个漂亮网站的基础。当我教别人CSS的时候, 我总是首先告诉他们: 良好的CSS只存在于良好的HTML标记基础上。这就好像一间房子需要一个坚固的地基一样,对不? 整洁、语义化的HTML标记具有很多的优势,但却还是有很多网站使用着并不友好的标记写法。
让我们来看一些写得并不友好的HTML标记, 并针对这些问题进行讨论,从而学习如何书写整洁规范的HTML标记。
脚本之家注: Chris Cyier在这里使用了两个文档来进行本文的代码说明: bad code 和 good code 。大家学习的时候请参考着这两个文件。
1. 严格的 DOCTYPE我们要做到这一点,只需要按正确的步骤来做即可. 没必要去讨论是否使用HTML 4.01或 XHTML 1.0,两者都对我们书写正确的代码提出了严格的要求。
但无论如何我们的代码不应该使用任何Tables表格来进行布局, 所以也就没必要使用Transitional DOCTYPE.
相关资源:
W3C推荐的 DTDs(文件类型声明)
Fix Your Site With the Right DOCTYPE!
No more Transitional DOCTYPEs, please
脚本之家注: 所谓的DTD就是文档类型声明,简单来说,就是对特定文档所定义的一些规则,这些规则包括一系列的元素和实体的声明。XHTML文档类型有三种: STRICT(严格类型), TRANSITIONAL(过渡类型)和 FRAMESET(框架类型)。目前,我们使用最多的是TRANSITIONAL,比如本站目前也是使用 XHTML 1.0 TRANSITIONAL。如果你的HTML代码书写的还算良好,那把现有的TRANSITIONAL 转为STRICT还是比较方便的。反之,也不用太急着转,个人觉得,STRICT更严谨,但用TRANSITIONAL也并没有太大影响。
2. Character set & encoding characters在我们的
除了字符集声明的位置外,
相关资源:
Wikipedia: UTF-8
A tutorial on character code issues
The Extended ASCII table
3. 适当的缩进在书写代码的时候,缩进并不会影响网页的外观,但使用适当的缩进能使代码更具可读性,标准的缩进方法是当你开始一个新的元素时缩进一个Tab位(或几个空格)。另外,记得,关闭元素的标签与开始标签对齐。
脚本之家注: 一些朋友会嫌书写代码的时候缩进比较麻烦,如果仅仅是你一个人阅读这份代码,那可能没什么问题,你自己觉得OK就好。但如果是协作或你的作品是公开发布分享的,那书写漂亮的可读化性更高的代码就很有必要了。
相关资源:
Clean up your Web pages with HTML TIDY
4. 使用外部CSS 和 JavaScript我们有一些CSS代码已经延伸到我们的
脚本之家注: 当然,这个问题或许也并不是那么严重。比如作为WordPress主题来说,写在
5. 正确的标签嵌套在我们的网站标题里面,我们使用
作为网站标题标签,这是完美的。并且添加了一个到首页的链接,但错误就出在把链接放到了外面,链接包围了。这种简单的嵌套错误,大多数浏览器都能良好的处理,但从技术上来说,这是不行的。锚链接是一个内联元素,而
标题是一个区块元素,区块元素不应该被放在内联元素中。
6. 去除不必要的DIV我不知道谁首先发明,但我喜欢“ pitis ”这个词,它指的是在HTML标记中过度的使用ps。在学习网页设计的某个阶段,大家学习如何使用一个DIV来包裹诸多其它元素来实现方便的布局和样式化。这就导致了DIV元素的滥用,需要的地方我们用了,完全不必要的地方我们也用了。
在上图的例子中,我们使用了一个 p (”topNav”) 来包含了UL列表 (”bigBarNavigation”). 但DIV和UL都是区块元素,所以没有必要使用DIV来包裹UL元素。
相关资源:
Divitis: what it is, and how to cure it.
7. 使用更好的命名惯例现在正好谈一下命名管理, 在上一条所说的示例中,我们的UL使用了ID名称 “bigBarNavigation.” 其中 “Navigation” 很好的说明了该区块的内容,但 “big” 和 “Bar” 描述的却是设计而不是内容. 它可能是在说这个菜单是一个很大的工具条, 但如果这个菜单的设计变成垂直的,那这个名称就会显得混乱和不相关。
友好的 class 和 id 名称 例如 “mainNav,” “subNav,” “sidebar,” “footer,” “metaData,” ,它们描述了所包含的内容. 不好的 class 和 id 名称则描述设计, 比如 “bigBoldHeader,” “leftSidebar,” and “roundedBox.”
脚本之家注: Chris 所强调的是按内容还是按设计来进行命名。个人补充一点: ID和Class名称使用大写还是小写,或单词首字母大写。首先,完全的大写单词是不利于阅读的,排除。至于完全使用小写还是单词首字母大写,就看个人的习惯了。重要的一点是,不管使用哪种规则,应该保持一致。不要一会儿纯小写,一会儿又首字母大写,会很混乱。
另外,我个人比较迷糊的是,对比较长的名称,是加下划线“_”, 还是连字符”-”,亦或不用。或者是我想的太复杂了吧。用哪种都好,保持一致就OK。

更多文章:
offset和vlookup组合公式(请问高手,怎么把vlookup的计算结果当成了offset的起点单元格!)
2026年1月22日 02:45
divano的中文意思(关于歌曲The Mass中某一段的翻译问题!)
2025年5月30日 00:00
scum荒岛求生手机版(荒野求生手游怎么手动存档 手动存档方法详解分享)
2026年1月5日 00:45
body art(my school英语作文:我爱我的学校)
2025年9月28日 06:00
hdr建筑设计事务所(介绍几个建筑网站主要是介绍国内外建筑作品的!)
2026年3月26日 17:45
什么时候用inner join(SQL中,用select语句时,为什么有时候要用inner join,有时候不用啊希望好心人帮忙)
2026年7月15日 12:30
competitive with(请以be honest and kind为题,写一篇英语短文两篇)
2026年7月2日 15:30
windowd7虚拟机永恒之蓝浏览器无法显示网页?求助,电脑无法安装永恒之蓝补丁
2026年1月26日 10:45
gradle版本查看(解决Flutter升级后,flutter run 卡在gradle build running的问题)
2026年8月26日 18:30
数据随机变换公式(excel里面怎样设置一组数字在两个数之间随机变化)
2025年6月8日 22:30
怎么下载linux系统镜像文件(Linux操作系统怎么下载!)
2025年9月10日 22:15
include string(#include <string.h>什么意思)
2025年10月19日 10:45
php小项目开发(如何使用Zend Studio创建PHP项目)
2026年7月23日 02:30











