前端-HTML和HTML5常用标签

HTML是HyperText Markup Language(超文本标记语言)的简称,它是一种用于创建网页的标准标记语言。

标记语言是由标签构成的语言。<标签名称>例如html,xml;标记语言不是编程语言。

HTML 运行在浏览器上,由浏览器来解析。

注意:html标签不区分大小写,但是推荐全小写

 

html文档的后缀名

.html和.htm两种都可以,没有区别。

 

标签的分类

围堵标签:有开始标签和结束标签,例如<html></html>

自闭标签:开始标签和结束标签都在一个标签中,如<br/>

 

标签的嵌套

标签可以嵌套,但是嵌套的层级不能错乱

正确案例:<p><a></a></p>
错误案例:<p><a></p></a>

 

标签的属性

标签的内部是可以定义属性的,属性由键值对组成,值需要用双引号引起来,多个属性用空格隔开

<标签名称 属性名1="属性值" 属性名2="属性值"></标签名称>
<p id="p1" name="p1"></p>

 

HTML文档的基本结构

HTML文档也叫web页面。

HTML注释以<!--开头,以-->结尾,其中内容可以为一行或多行。 注释的部分浏览器不解析,注释是为了给程序员看,更好的了解html代码

<!-- 声明当前文档是html5文档 -->
<!DOCTYPE html>
    <!-- html,根元素 ,围堵标签-->
    <html>
    <!-- head,头元素:
        作用:
            1、用于指定HTML文章中的一些元数据,例如元数据 meta:定义页面的编码格式,title:定义页面的标题
            2、引入外部的资源文件--未来讲解
    -->
    <head>
        <meta charset="utf-8" />
        <title>这是我的第一个HTML页面</title>
    </head>
    <!--body,主体:浏览器显示的内容都将在这里编写格式化代码的快捷键:ctrl+shift+f(英文状态下使用)
    -->
    <body>
        hello html 这是我的第一个HTML页面
    </body>
</html>
        

 

HTML常用标签

1.文本标签

1)标题标签 h1--h6:字体逐渐缩小

一般用在文章的标题上。

<h1>1级标签</h1>
<h2>2级标签</h2>
<h3>3级标签</h3>
<h4>4级标签</h4>
<h5>5级标签</h5>
<h6>6级标签</h6>

2)段落标签

一般用在正文。

<p>正文</p>

3) 换行标签

一般用在段落中强制换行。

<p>牡丹才是正国色,<br/>花开时节动京城</p>

页面显示为:
    牡丹才是正国色,
    花开时节动京城

4)水平线标签

一般用来分隔内容。

<hr color="" size=""/>

 5)范围标签

一般在大段内容中,为了突出部分内容的时候使用的标签;很少独立使用,一般嵌套在其他的标签中使用。

<p><span style="color:red;"></span></p>

2.图片标签

1) 基本属性

<img  src="" title="" width="" height=""/>

2) 设置图片的热点区域

<img src="" usemap="#test" />
<map name="test">
    <!-- shape是形状  coords是坐标(多个值之间用逗号隔开) -->
    <area shape="" coords="" href="" titile="" />
</map>

3.列表标签

一般用在导航上

1) 无序列表

<!-- 推荐ul标签中只有li -->
<ul>
    <li>
    </li>
</ul>

2) 有序列表

<ol>
    <li>
    </li>
</ol>

4.定义描述标签

一般用在图文混编的场景中

<!-- dl用于包裹dt、dd -->
<dl>
    <!-- dt用来放图片或标题 -->
    <dt></dt>
    <!-- dd用来补充对dt的描述说明 -->
    <dd></dd>
</dl>

5.布局标签  层 div

一般就是做容器,盛放其他标签的,将其他标签组合在一起用来布局。

6.标签分类

html标签可以分为块状元素和行级元素两类。

  块状元素:一般都是新起一行,可以容纳行内元素和其他块级元素;

  行级元素:一般都是语义级别的基本元素,一般只能容纳文本或者其他行内元素。

区分的简单方法:是否独占一行。

块状元素和行内元素的区别:

  1、 块级元素会独占一行,其宽度自动填满其父元素宽度; 行内元素会排列到同一行里,其宽度随元素的内容变化而变化。

  2、块级元素可以设置宽高;行内元素设置宽高无效。

  3、块级元素可以设置margin,padding属性;行内元素的水平方向的padding会有边距效果,但是竖 直方向的padding没有效果。

以上标签的分类

属于块状元素的:
    标题标签 h1-h6,
    段落标签 p ,
    水平线标签 hr,
    有序列表标签 ol--li,
    无序列表标签 ul--li,
    定义描述标签 dl-dt-dd,
    容器标签 div:

属于行级元素的:
    范围标签:span
    图像标签:img

 

超链接

超链接标签一般有两个作用:1、用来实现页面间的跳转 2、实现锚链接功能

页面间的跳转

<!-- target有两个值:默认为_self,在当前页打开 常用值_blank,在新页面打开 -->
<a href="目标资源路径" target="打开资源的位置">点一点</a>

锚链接

当一个页面长度超过一屏的时候,想迅速跳转到指定位置,例如大家经常浏览网页的时候,滑动超过一 屏,右下角经常会出现返回顶部连接,这个就是锚链接实现的。

这个定位可以实现本页面间的锚链接,也可以实现不同页面间的锚链接。

<a href="#锚点名称" target="_self">锚链接</a>

<!-- 目标位置定义锚点:<a name="锚点名称"><a/> 
    若为跨页面的锚点,则<a href="锚点页面名称.后缀名#锚点名称" />
-->

 

表格标签

规则表格

<!-- table:定义表格
    常用属性:
        height:高度
        width:宽度
        border:边框
        cellpadding:内容与单元格之间的距离
        cellspacing:单元格和单元格之间的距离
-->
<table border="1" cellpadding="0" cellspacing="0" width="90%" height="280p×">
    <!-- tr:定义行
        常用属性:
            align:文率水平方向上的对齐方式,
                有三个取伯,默认left-左对齐 center-居中对齐 right-右对齐
    -->
    <tr>
    <!--
        th和td标签都用来定文单元格,
        th:一般用来定义表头单元格
        td:一般用来定义表头单元格
        常用属性:valian文本垂直方向上的对齐方式 top顶部对齐 bottom底部对齐 middle垂直居中
       -->
        <th align="center">序号</th><th>商品名称</th><th>价格</th>
    </tr>
</table>            

不规则表格--跨行和跨列

<!-- 合并3列 -->
<td colspan="3"><td/>
<!-- 合并3行 -->
<td rowspan="3"><td/>

表格的高级标签--标题标签和逻辑分区标签

<table border="1" cellpadding="0" cellspacing="0" width="90%" height="280p×">
    <!-- 表格的标题标签 -->
    <caption></caption>
    <!-- 逻辑标签:thead、tbody、tfoot
            如果没有设置,默认所有行在tbody下
     -->
    <tr>
        <th align="center">序号</th><th>商品名称</th><th>价格</th>
    </tr>
</table>    

 

表单

概念:用于采集用户输入的数据。用于和服务器进行交互。

    <!--
            method共七种提交方式,get和post常用
                get:
                    请求参数会在地址栏中显示,会封装到请求行中
                    请求参数大小有限制
                    不太安全
                post:
                    请求参数不会在地址栏中显示,回封装到请求体中
                    请求参数没有大小限制
                    比较安全
            enctype:表单中有上传文件时必备属性,且取值为multipart/form-data
        -->
        <form action="指定提交数据的URL" method="post" enctype="multipart/form-data">
            <!-- 添加表单项元素
                表单项中的数据要提交,必须指定其name属性
            -->
        </form>

表单项元素中的一些属性:

  id:元素的唯一表示,不重复

  name:表单项元素的名称,很重要--提交数据到服务器之后,服务器获取数据通过该名称

  value:表单项元素的值,服务器获取数据通过name获取到的就是value

  type:表示表单项元素的呈现形式

  class:表示样式名称

  readonly:表示只读,用户只能看不能改

  disabled:表示禁用,该元素不能改而且背景是灰色

表单项元素

  文本框、密码框、单选按钮、复选框、文件域、日期-h5中的新特性、隐藏域、下拉列表框、文本域

    <!--
        type:输入框的显示形式,默认为text
        placeholder:文本框中显示的提示文字,用户输入时提示文字自动消失
    -->
    <input type="text" id="name1" name="name1" placeholder="请输入用户名" />
    <!--
        type="password"为密码框,输入内容后显示的是黑色实心圆,而非明文
        required:表示用户必须填写,没有填写提交表单失败并给出提示
    -->
    <input type="password" id="pas" name="pass" required />
    <!--
        type="radio"为单选按钮,成组出现,name相同为一组,同组互斥
        checked表示默认选中
    -->
    <input type="radio" name="gender" value="男" checked/>
    <input type="radio" name="gender" value="女" />
    <!--
        type="checkbox"为复选框,成组出现,name相同为一组,同组可多选
        checked表示默认选中
    -->
    <input type="checkbox" name="hobby" value="swim" checked/>游泳
    <input type="checkbox" name="hobby" value="movie" checked/>电影
    <input type="checkbox" name="hobby" value="music" />音乐
    <!--
        type="file"为文件域
        multiple:表示可以同时上传多个文件
    -->
    <input type="file" name="file1" multiple="multiple" />
        <!--
        type="date":表示年月日
        type="datetime-local":表示年月日时
    -->
    <input type="date" name="day" />
    <!--
        type="hidden"为隐藏域,页面看不见效果
        作用:隐藏一些用户不关心但程序书写需要的值
    -->
    <input type="hidden" name="id" value="0002" />
    <!--
        select下拉列表框,name属性
        option:select中是选项
            value表示值,selected表示默认选中
    -->
    <select name="month">
        <option value="1">1月</option>
        <option value="2" selected>2月</option>
        <option value="3">3月</option>
    </select>
    <!--
        textarea为文本域
            cols:指定列数,每一行有多少个字符
            rows:默认多少行
            readonly:表示只读,内容不可修改
            disabled:表示不可用,样式呈现灰色
    -->
    <textarea rows="10" cols="10" readonly disabled>
    </textarea>

   按钮

   <!--
       type:
           submit:提交按钮,提交到form的action指定路径
           image:等于提交按钮,没有value属性,有src属性
           reset:清空表单中所有用户输入,回到默认原始状态,相当于刷新了页面
           button: 普通按钮,没有任何功能
   -->
       <input type="submit" value="登录" id="loginBtn" />
    <button type="submit">登录</button>
           
    <input type="image" src="image/login.gif" id="loginBtn1" />
       
       <input type="reset" value="重置" id="resetBtn" />
    <button type="reset">重置</button>
           
       <input type="button" value="普通按钮" id="btn" />
    <button type="button">按钮</button>

标签

    <!--
        label:指定输入项的文字描述信息
        label的for属性一般会和input的id属性对应,
        对应之后点击label区域,回让inpu输入框获取焦点
    -->
    <label for="name1">用户名:</label>
    <input id="name1" />

 

框架

通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面。

例如京东个人中心页面,点击左侧内容的时候,只有右边页面在变动。

    <!--
        iframe:定义内嵌框架
        常用属性:
            src="URL":该URL指向不同的网页
            height、width定义高宽,默认以像素为单位,也可使用百分比
            frameborder:定义是否显示边框,设置为0,即移除边框
            name:框架名称
        iframe显示一个目标链接的页面,目标链接的属性必须使用iframe的属性,如下:
        点击查询链接时,百度页面将在本页内嵌框架中显示
    -->
    <p><a href="https://www.baidu.com" target="content">查询</a></p>
    <iframe name="content" src="src/message.html" width="100%" height="100%"></iframe>


    <!-- 框架集 -->
    <frameset cols="" rows="">
        <frame src="" />
    </frameset>

 

常用的布局组合标签

  div-ul-li/div-ol-li:常用于导航布局

  div-dl-dt-dd:常用于图文混编布局

  div-form:常用于表单布局

  div-table:常用于局部规则数据展示布局

 

HTML4与HTML5的区别

HTML4和HTML5分别是超文本标记语言的第四次和第五次修改,他们分别是html语言第4和第5版 本.HTML4是为了适应pc时代产生的,HTML5是为了适应移动互联网时代,为了在移动设备上支持多媒体。

HTML5是互联网的下一代标准,是构建以及呈现互联网内容的一种语言方式。被认为是互联网的核心技 术之一。HTML产生于1990年,1997年HTML4成为互联网标准,并广泛应用于互联网应用的开发。

HTML5将Web带入一个成熟的应用平台,在这个平台上,视频、音频、图像、动画以及与设备的交互 都进行了规范。

HTML5技术在未来主要发展的市场还是在移动端互联网领域,现阶段移动浏览器有应用体验不佳、网页 标准不统一的劣势,这两个方面是移动端网页发展的障碍,而HTML5技术能够解决这两个问题,并且将 劣势转化为优势,整体推动整个移动端网页方面的发展。

HTML4

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
    </head>
</html>



HTML5

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
</html>

 

HTML5中新增的语义标签

标签  描述
article  定义页面独立的内容区域。
aside 定义页面的侧边栏内容。
bdi  允许您设置一段文本,使其脱离其父元素的文本方向设置。
details  用于描述文档或文档某个部分的细节
dialog  定义对话框,比如提示框
summary  标签包含 details 元素的标题
header  定义了文档的头部区域
footer  定义 section 或 document 的页脚。
nav  定义导航链接的部分。
progress  定义任何类型的任务的进度。 
section  定义文档中的节(section、区段)。
time  定义日期或时间。 
wbr  规定在文本中的何处适合添加换行符。

 

HTML5表单

form新属性

  autocomplete 属性

autocomplete 属性规定 form 或 input 域应该拥有自动完成功能。 当用户在自动完成域中开始输入时,浏览器应该在该域中显示填写的选项。

提示: autocomplete 属性有可能在 form元素中是开启的,而在input元素中是关闭的。

注意: autocomplete 适用于 <input>标签,以及以下类型的 <input>标签:text, search, url, telephone, email, password, datepickers, range 以及 color。

<form action="" autocomplete="on">
    姓名:<input type="text" name="name"><br>
    电话: <input type="text" name="phone"><br>
    邮箱: <input type="email" name="email" autocomplete="off"><br>
    <input type="submit">
</form>
测试的时候需要先输入一遍,然后再刷新页面再次输入看到效果。
有些浏览器可能不自动支持,需要自己启用。    

 

input 新属性

  list属性

list 属性规定输入域的 datalist。datalist 是输入域的选项列表。

<input list="companys">

<datalist id="companys">
    <option value="alibaba">
    <option value="baidu">
    <option value="tencent">
    <option value="zijie">
    <option value="didi">
</datalist>

  multiple属性

multiple 属性是一个 boolean 属性

multiple 属性规定 <input>元素中可选择多个值。

注意: multiple 属性适用于以下类型的 <input>标签:email 和 file

上传多个文件: <input type="file" name="img" multiple>

  placeholder

placeholder 属性提供一种提示(hint),描述输入域所期待的值。 简短的提示在用户输入值前会显示在输入域上。

注意: placeholder 属性适用于以下类型的<input>标签:text, search, url, telephone, email 以及 password。 

<input type="text" name="userName" placeholder="请输入用户名">

  required

required 属性是一个 boolean 属性,required 属性规定必须在提交之前填写输入域(不能为空)。

注意:required 属性适用于以下类型的<input>标签:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file。

用户名: <input type="text" name="username" required>

 

HTML5新的表单元素

标签  描述 
datalist  input标签定义选项列表。请与 input 元素配合使用该元素,来定义 input 可能的值。 
keygen  规定用于表单的密钥对生成器字段。 
output  标签定义不同类型的输出,比如脚本的输出。

 

HTML5中新的input类型

HTML5 拥有多个新的表单输入类型。这些新特性提供了更好的输入控制和验证。

  •    color
  •   date
  •   datetime
  •   datetime-local
  •   email
  •   month
  •   number
  •   range
  •   search
  •   tel
  •   time
  •   url
  •   week

注意:并不是所有的主流浏览器都支持新的input类型,不过您已经可以在所有主流的浏览器中使用它们 了。即使不被支持,仍然可以显示为常规的文本域。

 

HTML5中新增的音频

直到现在,仍然不存在一项旨在网页上播放音频的标准。大多数音频是通过插件(比如 Flash)来播放 的。

然而,并非所有浏览器都拥有同样的插件。

HTML5 规定了在网页上嵌入音频元素的标准,即使用<audio>元素

<audio controls>
    <source src="horse.ogg" type="audio/ogg">
    <source src="horse.mp3" type="audio/mpeg">
    您的浏览器不支持 audio 元素。
</audio>

PS:control 属性供添加播放、暂停和音量控件。
在<audio></audio> 之间你需要插入浏览器不支持的<audio>元素的提示文本 。
<audio> 元素允许使用多个 <source> 元素. <source> 元素可以链接不同的音频文件,浏览器将使用
第一个支持的音频文件

目前<audio>元素支持三种音频格式文件: MP3, Wav, 和 Ogg:

音频格式的MIME类型

Format  MIME-type 
MP3  audio/mpeg 
Ogg  audio/ogg 
Wav  audio/wav

 

 

HTML5中新增的视频

<video width="320" height="240" controls>
    <source src="movie.mp4" type="video/mp4">
    <source src="movie.ogg" type="video/ogg">
    您的浏览器不支持Video标签。
</video>

<video> 元素提供了 播放、暂停和音量控件来控制视频。
同时 <video> 元素也提供了 width 和 height 属性控制视频的尺寸.如果设置的高度和宽度,所需的
视频空间会在页面加载时保留。如果没有设置这些属性,浏览器不知道大小的视频,浏览器就不能再加载时
保留特定的空间,页面就会根据原始视频的大小而改变。
<video></video> 标签之间插入的内容是提供给不支持 video 元素的浏览器显示的。

当前<video>元素支持三种视频格式: MP4, WebM, 和 Ogg:

Format  MIME-type 
MP4  video/mp4 
Ogg  audio/ogg 
WebM  video/webm

 

HTML5中已经移除的元素

  • frame
  • frameset
  • noframes

 

HTML中的转义符号

转移符号  描述   

&nbsp;

转义为空格 
&lt; 转义为小于号< 
&le; 转义为小于等于号≤ 
&gt; 转义为大于号> 
&ge; 转义为大于等于号≥ 
&copy; 转义为版权符号 ?

 

前端-HTML和HTML5常用标签

上一篇:上传图片


下一篇:.NET Core之为什么能跨平台?