HTML(Hyper Text Markup Language 超文本标记语言)顾名思义是一种标记语言,而标记语言则是一套标记标签(markup tag),而HTML标记标签常称为HTML标签(HTML Tag)。
HTML标签通常成对出现,标签对中第一个标签是开始标签/开发标签,第二个是闭合标签/结束标签。HTML元素指的是从开始标签(start tag)到结束标签(end tag)的所有代码,如:<p>Hello,world</p>
HTML文档包含HTML标签以及文档内容,即HTML文档由HTML元素定义,HTML文档也叫web页面
。HTML使用标记标签来描述网页,但浏览器并不直接显示HTML标签,而是根据标签来决定如何如何展示HTML页面内容给用户。
HTML文档
HTML文档由嵌套的HTML元素组成。
关于创建HTML5的必要说明
HTML5是HTML的最后一个版本,相对于HTML4.01,HTML5提供更多的新元素和属性(如
<video>
元素),其次它还有许多新特性,允许Web开发人员用HTML5创建Web应用,最后HTML5规范比之前也是强多了。
<!DOCTYPE>
声明用来声明文档类型(位于<html>
与</html>
用来描述文档类型),有助于浏览器显示正确显示页面,doctype声明是不分大小写的,而以下的就是HTML5版本的声明了,简洁明了。
<!DOCTYPE html> <!-- 最常用的 -->
<!Doctype Html>
<!DOCTYPE HTML>
<!doctype html>
HTML文档中的<html>
元素是Web页面中最顶层元素(根元素),紧跟文档声明doctype后面,所有元素都需内嵌在这元素中。而<head>
元素用于定义网页文档的头部,它是所有头部元素的容器。<body>
元素用来定义HTML文档的主体。
而在头部<head>
中有两个元素像文档声明一样需要被提及,那就是关于字符编码的元信息以及标题(title)。
<head>
<meta charset="utf-8" />
<title>百毒</title>
</head>
有时候还会遇到如下的关于字符编码的元信息
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
而这其实是HTML4.01或更早版本的标记格式,而HTML5追求的就是简洁明了,这到后来诸如引用CSS文件也可以体现得到。至于更多关于元信息和头部的内容,可看这里。
HTML元素以及标签属性
HTML元素语法:
- HTML元素以开始标签起始,以终止标签结束。
- 元素内容是标签之间的内容,内容可为空。
- 空元素在开始标签中进行关闭(在XHTML,XML以及未来的HTML版本中,所有元素都必须被关闭,在开始标签中添加斜杠,如
<br />
是正确的关闭空元素的方法)。
大多数HTML元素都有属性。想要检验书写的HTML是否正确可以把书写的源码弄到这个验证网站上来。
元素的标签可以拥有属性,以下是全局属性:
属性 | 作用 | 用法 |
---|---|---|
accesskey | 定义激活元素的快捷键 | 以下元素支持 accesskey 属性:<a> , <area> , <button> , <input> , <label> , <legend> 以及 <textarea> 。定义后就可以在网页上使用 Alt +设定快捷键 激活元素 |
class | 规定元素的一个或多个类名(引用样式表中的类) | class 属性大多数时候用于指向样式表中的类(class)。 class 属性不能在以下 HTML 元素中使用:base, head, html, meta, param, script, style 以及 title。 |
contenteditable | 规定元素内容可否编辑 | contenteditable 属性是 HTML5 中的新属性。值为:true/false |
data-* | 用于存储页面或应用程序的私有自定义数据。 存储的数据能够被页面的 JavaScript 中利用 | |
draggable | 用于定义元素是否可以被拖动 | 链接和图像默认是可拖动的。 |
hidden | 定义浏览器不应显示元素 | 防止用户查看元素,直到匹配某些条件(比如选择了某个复选框)。然后,JavaScript 可以删除 hidden 属性,以使此元素可见。 语法: hidden="hidden" (写true 和false 没用)与CSS中的 display:none; 不同的是这个方法的元素会一直在文档流中占据位置,形成空白 |
id | 定义元素唯一的id | id必须是唯一的,且不是数字。 id的作用:作为链接锚(link anchor);通过 JavaScript(HTML DOM)或通过CSS为带有指定 id 的元素改变或添加样式。 |
lang | 定义元素内容的语言类型 | lang属性可用于网页或部分网页的语言。这对搜索引擎和浏览器是有帮助的。根据W3C推荐标准,应该通过<html> 标签中的lang属性对每张页面中的主要语言进行声明。(语言代码参考手册) |
spellcheck | 定义是否对元素进行拼写检查 | 可以对以下内容进行拼写检查: 1, <input> 元素中的文本值(非密码)2, <textarea> 元素中的文本3, 可编辑元素中的文本 |
style(被CSS取代) | 内联样式,定义元素的行内样式 | 数值:一个或多个由分号分隔的 CSS 属性和值,而CSS 属性和值用冒号连接。 |
tabindex | 定义元素的tab键控制次序 | 以下元素支持tabindex 属性:<a> ,<area> ,<button> ,<input> ,<object> ,<select> 以及<textarea> 。另:safari不支持tabindex |
title | 定义关于元素的额外信息常用来鼠标移到元素时显示 | 常与<form> 以及<a> 元素一同使用,提供关于输入格式和链接目标的信息。同时它是<abbr> 和<acronym> 元素的必需属性。 |
style
属性:
提供了一种改变所有HTML元素样式的方法。这里不赞成使用其他标签内的属性来表示元素样式,因为自从HTML4版本,将HTML的结构与表现分解到两种语言后(一种用于实现结构(HTML),一种用于表现(CSS)),当中有许多属性都废弃(不要跟头部元信息中的<style>
元素混淆)
class
属性:
class(类)常用于编写CSS文件的类选择器,这样可以更为精准方便的定义出哪些元素使用哪些样式。在简单的书写完class属性之后,就可以在CSS文件上创建类选择器了,如:
p.greentea{
color:green;
}
.greentea{
color:green;
}
而且一个元素可以加入多个类,只需用空格符号隔开,如:
<p class="greentea drink cool">
id
属性
跟class
属性有点类似,id
属性也常用于编写CSS文件的类选择器(也可以引用来制作书签等等),与class
属性不同的是一个元素只能有一个id
,而这id
值也必须是整个文档中独一无二的,而在CSS文档中引用id
,如:
#greentea{
color:green;
}
文档的标题与段落(块级元素)
HTML
标题(heading)是通过<h1>
~<h6>
等标签定义的。标题的作用是:搜索引擎可以使用标题为网页的结构和内容编制索引;用户也可以通过标题来快速浏览网页。
HTML
段落(paragraph)是通过<p>
元素定义。
这里引入了几个元素,分别是:
<br />
作用是不产生一个新段落的情况下进行换行(新行)
<hr />
作用是生成一个分割线
<!-- xxx -->
作用是生成注释