HTML的概念
HTML的概念
- Hyper Text Markup Language 的四个英文首字母的缩写。超文本是说指该文档指向其他的文档的超链接文档。HTML进过浏览器解析渲染之后,就是我们平常看到网页。我们平常# 看到网页包括HTML、CSS、JS等。
HTML:主要用来标记页面中的内容。和表现相关如字体颜色,大小等都不是由HTML来控制。
HTML的发展历史
HTML文档
- 下面具体介绍各个部分:
<!DOCTYPE> :首行、顶格写。严格说<!DOCTYPE>并不是HTML的一部分,它的主要作用是告诉浏览器需要用什么标准来解析文档。
HTML5之前<!DOCTYPE>的类型:HTML4.01有strict.dtd(严格)、loose.dtd(松散)、frameset.dtd(框架),html5定格写<!DOCTYPE html>
HTML文档头部
<head>
<meta charset="utf-8"/>
<title>sample_title</title>
<meta name="keywords" content=""/>
<meta name="description" content=""/>
<meta name="viewport" content="width=device-width"/>
<link rel="stylesheet" href="css/style.css"/>
<link rel="shortcut icon" href="img/favicon.ico"/>
<link rel="apple-touch-icon" href="img/touchicon.png"/>
</head>
- 拆解分析
<meta charset="utf-8">
:写在<title>
之前,防止<title>
标签乱码。
<title>
:网页标题,出现在浏览器标题栏和搜索引擎搜索结果中。
<meta name="keywords"content="">
<meta name="description" content="">
:描述文档的基本信息,content的内容给搜索引擎用的。
<meta name=”viewport” content=”width-device-width”>
:针对移动端的浏览器。
<link rel=”shortcut icon” href=”favicon.ico”>
<link rel=”stylesheet” href=”../css/style.css”>
: 样式表的引入。
<style>p {color:#999;}</style>
: 样式也可用<style>
标签引入。
HTML基础设施
- 文件应以“<!DOCTYPE ......>”首行顶格开始,推荐使用“<!DOCTYPE html>”。
- 必须申明文档的编码charset,且与文件本身编码保持一致,推荐使用UTF-8编码<meta charset="utf-8"/>。
- 根据页面内容和需求填写适当的keywords和description。
- 页面title是极为重要的不可缺少的一项。
结构顺序和视觉顺序基本保持一致
- 按照从上至下、从左到右的视觉顺序书写HTML结构。
- 有时候为了便于搜索引擎抓取,我们也会将重要内容在HTML结构顺序上提前。
- 用div代替table布局,可以使HTML更具灵活性,也方便利用CSS控制。
- table不建议用于布局,但表现具有明显表格形式的数据,table还是首选。
结构、表现、行为三者分离,避免内联
- 使用link将css文件引入,并置于head中。
- 使用script将js文件引入,并置于body底部。
保持良好的简洁的树形结构
- 每一个块级元素都另起一行,每一行都使用Tab缩进对齐(head和body的子元素不需要缩进)。删除冗余的行尾的空格。
- 使用4个空格代替1个Tab(大多数编辑器中可设置)。
- 对于内容较为简单的表格,建议将tr写成单行。
- 你也可以在大的模块之间用空行隔开,使模块更清晰。
<body>
<!-- 侧栏内容区 -->
<div class="m-side">
<div class="side">
<div class="sidein">
<!-- 热门标签 -->
<div class="sideblk">
<div class="m-hd3"><h3 class="tit">热门标签</h3> </div>
...
</div>
<!-- 最热TOP5 -->
<div class="sideblk">
<div class="m-hd3"><h3 class="tit">最热TOP5</h3> <a href="#" class="s-fc02 f-fr">更多»</a></div>
...
</div>
</div>
</div>
</div>
<!-- /侧栏内容区 -->
</body>
另外,请做到以下几点
- 结构上如果可以并列书写,就不要嵌套。如果可以写成
<div></div><div></div>
那么就不要写成<div><div></div></div>
- 如果结构已经可以满足视觉和语义的要求,那么就不要有额外的冗余的结构。比如
<div><h2></h2></div>
已经能满足要求,那么就不要再写成<div><div><h2></h2></div></div>
- 一个标签上引用的className不要过多,越少越好。比如不要出现这种情况:
<div class="class1 class2 class3 class4"></div>
- 对于一个语义化的内部标签,应尽量避免使用className。比如在这样一个列表中,li标签中的itm应去除:
<ul class="m-help"><li class="itm"></li><li class="itm"></li></ul>