02 HTML学习---HTML5保留的常用元素
02 HTML学习---HTML5保留的常用元素
基本元素
1、HTML注释
HTML注释的基本语法格式如下:
<!-- 这里是注释的内容 -->
2、html标签
这是HTML5的根元素,但是HTML允许忽略这个元素。
3、head标签
这是用来定义HTML5文档的页面头部分,但是HTML5允许完全忽略这个元素。
4、title
这个标签是用来定义HTML5文档的页面标题。
5、body
这个标签是用来定义HTML5的页面主体部分。
6、h1~h6
这个标签组里的标签是用来定义标题1~6
7、br
这个标签用来插入一个换行。
8、hr
这个标签用来定义一条水平线,该元素在HTML5中还代表主题结束的语义。
9、span、div和p
- p元素用来表示段落
- div用来定义文档中的节
- span元素与div元素基本相似,区别是span只代表一般性文字,该元素文本内容默认不换行。
span、p和div的比较
- 都作为其他内容的容器,容纳文本和其他内容
- 默认情况下,span不会导致换行,而div会导致换行,p会产生一个段落,段落之间有更大的间距
- span和p只能包含文本、图像、超链接、文本格式化元素和表单控件元素,p可以包含span,但是span不能包含p
- div除了可以包含p和span外还能包含更多的内容,正是因为div可以包含各种各样的内容,所以滥用div导致语义的清晰性下降,为了避免这种情况,HTML5推荐使用结构文档元素,如article、section和nav等
案例
<!DOCTYPE html> <html> <head> <title>基本元素</title> <meta charset="utf-8"> </head> <body> <!-- 下面是H1-H6标签 --> <h1>这里是标题1</h1> <h2>这里是标题2</h2> <h3>这里是标题3</h3> <h4>这里是标题4</h4> <h5>这里是标题5</h5> <h6>这里是标题6</h6> <!-- 下面是一条分割线 --> <hr> <!-- 下面是三个段落 --> <p>这里是段落1</p> <p>这里是段落2</p> <p>这里是段落3</p> <!-- 下面是三个span元素 --> <span>这里是span1</span> <span>这里是span2</span> <span>这里是span3</span> <!-- 下面是2个换行 --> <br> <br> <!-- 下面是三个div片段 --> <div>这里是div1</div> <div>这里是div2</div> <div>这里是div3</div> </body> </html>
文本格式化元素
下面元素可以让文本内容在浏览器中呈现出特定效果,这些文本格式化元素能够包含文本、图像、超链接、文本格式化元素和表单控件元素,可以和span元素相互包含。
1、b和strong
都是用来定义粗体文本,用法也基本一致,只是HTML5给strong元素增加了语义,用来表示重要的文本。
2、i和em
都是用来定义斜体文本,但是HTML5给em添加了语义,表示强调的文本。
3、small
定义小号文本字体,专门用于标识所谓的小字印刷体,通常用来标注诸如免责声明、注意事项、法律规定和版权相关的声明性文字。
4、sub和sup
上下标文字,sub用来定义下标文字,sup用来定义上标文字
5、bdo
定义文本显示的方向:
属性名称 | 属性值 |
---|---|
dir | ltr:文字从左向右 rtl:文字从右向左 |
案例
<body> <b>这里是b加粗的文字</b><br> <strong>这里是strong的加粗文字</strong><br> <i>这里是斜体文字i</i><br> <em>这里是em的斜体文字</em><br> <small>这里是small的小号字体</small><br> 正常字体<sub>下标字体</sub><br> 正常字体<sup>上标字体</sup><br> <bdo dir="ltr">从左向右排列的文字</bdo><br> <bdo dir="rtl">从右向左排列的文字</bdo> </body>
语义相关的元素
1、abbr
用于表示一个缩写,使用该元素时候通常建议指定title属性,该属性用于指定该缩写代表的全称。
属性 | 属性值说明 |
---|---|
title | 是一个字符串,用来指定该缩写代表的全称,当鼠标放在上面的时候就会显示全称 |
2、address
用于表示一个地址,浏览器通常会使用斜体字显示address所包含的文本。
3、blockquote和q
都是用来定义一段引用文本。
-
blockquote:用来定义一段长的、换行的引用文本,浏览器会使用缩进的方式显示这段被引用的文本
属性 属性值说明 cite 一个字符串,用于指定该引用文本所引用的网址的URL地址或者出处 -
q:用于定义一段短的、不换行的引用文本,浏览器会为这段被引用的文本添加引号
4、cite
用于表示作品(一本书、电影、歌曲)的标题,通常浏览器会使用斜体字显示cite所包含的文本。
5、code
用来表示一段代码。
6、dfn
用来表示一个专业术语,浏览器通常会用粗体或者斜体显示dfn所包含的文本。
7、del和ins
del用来表示一段被删除的文本,浏览器会以中划线的形式显示del包含的文本;ins用来表示一段插入的文本,浏览器通常会以下划线的形式显示ins包含的文本。两个元素都有的属性:
属性 | 属性值说明 |
---|---|
cite | 该属性值为一个URL,该URL对应的文本解释了文本被删除或插入的原因。 |
datetime | 定义文本被删除或插入的日期、时间 |
8、pre
用来表示该元素所包含的文本已经进行预格式化,也就是说pre元素所包含的文本的空格、回车、tab键和其他格式化字符都会被保留下来,但是浏览器还是会处理pre元素内的大部分HTML元素。
9、samp
用于定义示范文本内容,默认以小字体显示内容。
10、kbd
用于定义键盘文本,该元素用于表示文本是通过键盘输入的,通常在计算机使用文档、使用说明中经常会使用该元素。
11、var
用于表示一个变量,浏览器通常会用斜体表示var包含的文本。
<body> <abbr title="超文本标记语言">HTML</abbr><br> 公司的地址是:<address>黄埔路2号</address><br> <blockquote> 白日依山尽,黄河入海流。<br> 欲穷千里目,更上一层楼。<br> </blockquote> <q>HTML</q>是超文本标记语言<br> 四大名著:<cite>《红楼梦》</cite>、<cite>《三国演义》</cite>、<cite>《水浒传》</cite> 、<cite>《西游戏》</cite><br> <code> public static void main(String[] args){ <br> private string name = '张三';<br> } </code><br> <dfn>HTML</dfn>是超文本标记语言<br> <del>这是一段删除的文本</del><br> <ins>这是一段插入的文本</ins><br> <pre> public static void main(String[] args){ private string name = '张三'; } </pre><br> <samp>这里是示范文本</samp><br> Linux命令:<kbd>ls -l</kbd><br> <var>i</var>、<var>j</var>是常用来循环的变量。 </body>
使用a元素添加超链接和锚点
HTML5保留了a元素,主要属性如下:
属性 | 属性值说明 |
---|---|
href | 指定超链接所链接的另一个资源 |
hreflang | 指定超链接所链接的文档所使用的语言 |
target | 指定使用框架集中的哪个框架装载另外一个资源,该属性可以是_self、_blank、_top、_parent四个值,分别代表自身、新窗口、顶层框架、父框架来加载资源 |
download | 用于让用户下载目录链接所指向的资源,而不是直接打开目标链接,该属性的属性值指定用于保存下载资源时候默认的文件名 |
type | 指定连接文档的MIME类型 |
media | 指定目标URL所引用的媒体类型,默认是all,只有当指定了href属性时该属性才有效 |
注意:download、type、media是HTML5新增的属性
普通地址链接
a元素可以包含文本、图像、各种文本格式化元素和表单元素等内容:
<body> <!-- 加粗地址,在本窗口打开 --> <a href="http://www.baidu.com"><strong>百度</strong></a> <br> <!-- 斜体,在新的窗口打开 --> <a href="http://www.baidu.com" target="_blank"><em>百度</em></a> <!-- 图片 --> <a href="http://www.baidu.com"><img src="./bd_logo1.png"></a><br> <!-- 本地网址 --> <a href="./01 演示面向对象.html">本地网址</a> </body>
下载文件
当a标签指定了download属性,可以控制让用户下载目录链接所指向的资源,而不是直接打开目标链接,download属性指定了目标资源另存为的文件,如:
<body> <a href="bd_logo1.jpg" download="bd_logo1.jpg" type="image/jpeg">下载文件</a> </body>
锚点定位
a元素还可以生成一个命名锚点,命名锚点用于在HTML页面中生成一个定位点,这样允许超链接直接连接到指定页面的定位点。插入定位点需要指定name属性,name属性值就是该命名锚点的名称,指定命名锚点的格式:
- 当前页面:href="#锚点名"
- 指向其他特定页面的:href=“页面地址#锚点名”
<body> <a href="#test">指定本页面中的锚点</a> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <!-- 这里定义了一个命名锚点 --> <a name="test">锚点的地址</a> </body>
除了通过name属性来设置命名锚点,还可以通过id来定位锚点:
<body> <a href="#test">指定本页面中的锚点</a> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <br><br><br><br><br><br><br> <!-- 这里定义了一个命名锚点 --> <span id="test">锚点指向的地址</span> </body>
列表相关元素
无序列表
ul用于定义无序列表,该元素只能包含li子元素,li用来定义列表项,该元素可以包含和div完全类似的内容:
<body> <ul> <li>第1排数据</li> <li>第2排数据</li> <li>第3排数据</li> <li>第4排数据</li> </ul> </body>
有序列表
ol定义有序列表,该元素只能包含li子元素,ol元素可以包含下面三个属性:
属性 | 属性值说明 |
---|---|
start | 指定列表的起始数字,默认是第一个,如1、A等 |
type | 指定使用哪种类型的编号,默认1代表数字,A或者a代表大小写字母,I或者i代表大小写罗马数字,该熟悉HTML5不推荐使用,推荐使用CSS |
reversed | 是否反序排列 |
<body> <ol> <li>第1排数据</li> <li>第2排数据</li> <li>第3排数据</li> </ol> <ol type="A"> <li>第1排数据</li> <li>第2排数据</li> <li>第3排数据</li> </ol> <ol start="3"> <li>第1排数据</li> <li>第2排数据</li> <li>第3排数据</li> </ol> <ol reversed> <li>第1排数据</li> <li>第2排数据</li> <li>第3排数据</li> </ol> </body>
术语列表
dl用于定义术语列表,该元素只能包含dt和dd两个子元素。
- dt:用于定义术语列表的标题列表项,该元素只能包含文本、图像、超链接、文本格式化元素和表单控件元素
- dd:定义普通列表项,可以包含与div完全类似的内容
dl列表可以包含多个列表项,dt用于定义标题,一个dl可以包含多个dt,但是多个术语不允许重复;每个dt元素后面可以跟着一个或者多个dd元素,dd元素内容用于对指定的标题进行说明:
<body> <dl> <dt>Java</dt> <dd>Java是一门广泛使用、跨平台的开发语言</dd> <dt>疯狂Java体系图书</dt> <dd>疯狂Java体系图书是由李刚十年创建的。</dd> <dd>疯狂Java体系图书已经得到广泛的市场认同。</dd> </dl> </body>
img图像元素
HTML5保留了img元素在页面中定义图片,这个元素只能是一个空元素,不可以包含任何内容,必须包含下面的属性:
属性 | 属性值 |
---|---|
src | 该属性定义了图片文件所在的位置,可以是绝对路径或者相对路径 |
alt | 该属性定义了一段文本,该文本作为该图片的提示信息 |
height | 指定图片的高度,可以是百分比或者像素 |
width | 指定图片的宽度,可以是百分比或者像素 |
注意:如果这两个属性只指定一个,另外一个会根据图片原有比例重新计算
简单的加载图片
<body> <img src="./bd_logo1.png" alt="百度logo" width="100px"> <a href="http://www.baidu.com"> <img src="./bd_logo1.png" alt="百度" width="100px"> </a> </body>
分区链接图片
HTML5提供了下面几个元素,实现图像的分区链接的功能:
- map:用于定义图片映射,该元素主要可以包含一个或者多个area子元素,每个area子元素定义了一个区域,不同的区域可以链接到不同的URL
- area:用于定义图片映射的内部区域,该元素是一个空元素,该元素的主要属性如下
属性 | 属性值 |
---|---|
shape | 指定内部区域是哪种区域,默认是rect矩形区域,除此之外还可以是circle和poly,分别代表圆形或者多边形 |
cords | 指定多个坐标值,用于确定区域位置 |
href | 指定该区域所链接的资源 |
alt | 指定一段文本,该文本作为图片的提示信息 |
target | 指定哪种方式装载资源 |
一旦使用了map元素定义了图片映射之后,就可以让图片使用该图片映射,通过img元素的usermap属性让该图片使用图片映射,设置usermap属性值为#mapname就可以了,这个mapname是map元素的name属性值,如下案例:
<body> <img src="./bd_logo1.png" alt="百度logo" width="300" height="120" usemap="#test"> <map name="test"> <area shape="circle" coords="57,55,25" href="http://www.baidu.com" > <area shape="poly" coords="188,28,185,50,200,74,224,72,246,51" href="http://www.qq.com"> </map> </body>
提交图片的点击坐标
将图片放在a元素内就可以创建带链接的图片,此时如果为img元素指定ismap属性,当用户点击目标的时候,会将用户点击图片的坐标也提交给服务器:
<body> <a href="http://www.baidu.com"> <img src="./bd_logo1.png" width="100px" ismap> </a> </body>
表格相关元素
创建表格
表格相关的元素有下面几个:
-
table:用于定义表格,table只能包含0个或者1个caption子元素,0个或者1个thead子元素,多个tr子元素,多个tbody子元素,具有下面几个属性:
属性 属性值 cellpadding 指定单元格内容和单元格边框之间的间距,可以是像素或百分比 cellspacing 指定单元格之间的间距,可以是百分比或者像素 width 指定表格宽度,可以是像素值或者百分比 -
caption:用于定义表格标题,该元素只能包含文本、图像、超链接、文本格式化元素和表单控件元素等。
-
tr:定义表格行,只能包含td和th两种元素
-
td:定义单元格,该元素和div元素一样,可以包含各种类型的子元素,包括在td元素里面包含table子元素插入一个表格,该元素可以指定的属性:
属性 属性值 colspan 指定该单元格跨多少列 rowspan 指定该单元格跨多少行 height 指定该单元格的高度 width 指定该单元格的宽度 -
th:定义表格的表头单元格,和td几乎一样,只是浏览器呈现的时候不一样
-
tbody:定义表格的主题,该元素只能包含tr子元素
使用tbody元素可以将一个表格分为几个独立部分,可以将表格中的一行或者多行合并成一组,尤其是使用JavaScript前段编程时经常需要动态修改表格中的某行,这就需要tbody元素了。tbody元素必须使用tr来定义表哥行,tbody不会输出任何内容,一旦使用tbody定义为一组,一个tbody就是表格中的一个独立部分,不能从一个tbody跨越到另外一个tbody。
-
thead:定义表格的头,用于基本与tbody相似
-
tfoot:定义表格脚,用于基本与tbody相似
<body> <table style="width: 400px;" border="1"> <caption>表格的标题</caption> <thead> <tr> <th>标题1</th> <th>标题2</th> </tr> </thead> <tfoot> <tr> <td colspan="2">这里是表格脚</td> </tr> </tfoot> <tbody> <tr> <td rowspan="2">跨2行的单元格</td> <td>普通单元格</td> </tr> <tr> <td>普通单元格</td> </tr> <tr> <td colspan="2">跨2列的单元格</td> </tr> </tbody> </table> </body>
设置表格的整体属性
如果需要在页面中给表格的某列整体设置属性,可以使用下面两个元素:
- col:该元素用于为表格的一列或者多列,指定属性,该元素只能在table或colgroup元素内。col不会产生任何表格列,只是用来给指定的整体列指定列属性,因此,一旦在table中使用col为表格指定列属性,col表格定义的列数就应该和表格内实际的列数相等。
- colgroup:该元素用于为表格中的一个或者多个列指定列属性值,该元素通常定义在table元素内,只是用于组织多个col元素
<body> <table style="background-color:black;border-collapse:separate; border-spacing: 1px;"> <caption>表格的标题</caption> <colgroup style="background-color: white;"> <!-- 设置第一行列宽 --> <col style="width: 160px;"> <!-- 设置后两列宽度 --> <col style="width: 100px;" span="2"> </colgroup> <thead> <tr> <th>标题1</th> <th>标题2</th> <th>标题3</th> </tr> </thead> <tbody> <tr> <td>普通单元格</td> <td>普通单元格</td> <td>普通单元格</td> </tr> </tbody> </table> </body>
HTML5增强的iframe元素
HTML5不推荐使用框架集,只保留了iframe元素。该元素可以在普通的HTML页面中使用,用于生成一个行内框架,可以放在HTML页面的任何位置,除了通用属性外,还可以指定下面的属性:
属性 | 属性值 |
---|---|
src | 指定一个URL地址,指定该框架加载哪个页面 |
name | 指定iframe的名字 |
longdesc | 该属性也是指定一个URL,该页面包含了关于该iframe的长描述 |
scrolling | 设置是否在iframe中显示滚动条,值为yes、no、auto |
height | iframe的高度 |
width | iframe的宽度 |
frameborder | 是否显示iframe的边框 |
marginheight | 设置iframe的顶部和底部的页边距 |
marginwidth | 设置iframe左侧和右侧的页边距 |
HTML5为增强iframe新增了下面的属性:
属性 | 属性值说明 |
---|---|
srcdoc | 允许直接指定HTML片段,如果浏览器暂时不支持srcdoc的属性,那么将会继续显示src属性所指向的页面 |
seamless | 该属性的值是boolean类型,指定了该属性的iframe所生成的框架看上去像是原文档的一部分,不再显示边框和滚动条 |
sandbox | sandbox是一个安全性方面的属性,用于对框架集中的页面增加一系列的额外限制。如果不指定该属性,则iframe加载的网页不受任何限制,该属性可以同时指定多个(使用空格隔开): "":全部限制 allow-forms:允许框架内的表单进行提交,通常需要和allow-same-origin属性结合使用 allow-same-origin:允许框架内所加载的网页视为与使用该iframe元素的页面来自相同的源 allow-scripts:允许将框架内所加载的网页执行JavaScript脚本 allow-top-navigation:允许将框架内所加载网页中的超链接导航到父级窗口 |
- HTML学习笔记(二)_HTML5常用元素与属性
- HTML5+CSS3+JS(第二课).HTML5保留的常用元素(二)
- HTML5+CSS3+JS(第二课).HTML5保留的常用元素(三)和新通用属性
- HTML5+CSS3+JS(第二课).HTML5保留的常用元素(一)
- 疯狂html5讲义(二):HTML5简的常用元素与属性(一):html5保留的常用元素
- HTML5学习_day02(4)--html常用标签分类
- HTML5保留的常用元素(二)
- 05 HTML学习---HTML5新增的结构元素
- HTML学习笔记——常用元素及其属性(一)
- HTML5学习02-元素、属性和格式化
- HTML学习笔记——常用元素及其属性(二)
- 前端学习笔记,HTML常用标签02
- HTML5保留的常用元素(一)
- HTML5保留的常用元素(三)
- WEB学习笔记(二):HTML5比常用的HTML多了哪些?
- <学习html>第八天笔记-HTML5文档类型和字符集、HTML5新标签与特性(常用新标签、新增input type属性值、常用新属性、多媒体标签)
- 前端学习之路html基础(02)——常用标签
- 03 HTML学习---HTML5保留的通用属性
- HTML5学习_day05(5)--html之float元素的规则
- HTML5学习_day05(8)--html之伪类元素选择器(伪元素)