0


HTML基础和标签

HTML基础和标签

HTML : HTML的全称为

超文本标记语言

, 是一种

标记语言

, 它包括一

系列标签

, 通过这些标签可以将网络上的

文档

格式统一 , 使分散的Internet资源连接为一个逻辑整体 , HTML文本是由HTML命令组成的描述性文本 , HTML命令可以说明文字 , 图形 , 动画 , 声音 , 表格 , 链接等

1.HTML的感知

1.1 Web标准构成

  • 结构(HTML)----网页元素
  • 表现(CSS)----网页样式 , 包括 : 版式 颜色 大小等
  • 行为(JavaScript)----网页交互的动态效果

1.2 HTML骨架结构

<html><head><title>网页标题</title></head><body>
        主体内容
    </body></html>
  • html标签:网页的整体(页面最大的标签 , 根标签)
  • head标签:网页的头部
  • body标签:网页的身体
  • title标签:网页的标题

新建文件文件的扩展名是.html

1.3 VS Code快速创建页面

  • 创建HTML骨架结构快捷键 : !+回车 / !+Tab或者html:5
<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device-width ,  initial-scale=1.0"><title>网页标题</title></head><body>
     主体内容
</body></html>

注释快捷方式 : Ctrl+/ (注释内容不会向客户端展示 , 只用作程序开发代码解释)

2. HTML语法规范

2.1 HTML标签的构成

  • 双边标签 : 有两部分组成 , 前部分叫开始标签 , 后部分叫结束标签 , 结束标签在标签名前有一个 /(斜线);两部分之间包裹内容 例如:<p>内容</p>
  • 单边标签 : 标签由一部分组成 , 不需要结束标签 例如:<br>

2.2 HTML标签的属性

  • 标签的属性写在开始标签内部
  • 标签上可以同时存在多个属性
  • 属性之间以空格隔开
  • 标签名与属性之间必须以空格隔开
  • 属性之间没有顺序之分

2.3 标签类型与关系

<!-- 嵌套关系 --><head><title></title></head><!-- 兄弟关系 --><head></head><body></body>

3. HTML标签

3.1 排版标签

3.1.1 标题标签

  • h标签
<!-- 标题标签  --><h1>1级标题</h1><h2>2级标题</h2><h3>3级标题</h3><h4>4级标题</h4><h5>5级标题</h5><h6>6级标题</h6>

双边标签 , 文字加粗 , 独占一行 , 文字变大 , 但是从h1 → h6文字逐渐减小

3.1.2 段落标签

  • p标签
<!-- 段落标签 --><p>段落标签</p><p>段落标签</p>

双边标签 , 独占一行 , 段落之间存在缝隙

会根据浏览器窗口大小自动换行显示

3.1.3 换行标签

  • br标签
<!-- 换行标签 -->
     换行标签<br>

单边标签 , 文字强制换行显示

3.1.4 水平线标签

  • hr标签
<!-- 水平线标签 --><hr>

单边标签 , 页面显示一条水平线

3.2 文本格式化标签

  • strong 加粗 , em 倾斜 , ins 下划线 , del 删除线 双边标签
<!-- 加粗 --><strong>加粗</strong><b>加粗</b><!-- 下划线 --><ins>下划线</ins><u>下划线</u><!-- 倾斜 --><em>倾斜</em><i>倾斜</i><!-- 删除线 --><del>删除线</del><s>删除线</s>

突出重要性 , 比普通文字更加重要

语义更清晰 , 更强烈

3.3 媒体标签

3.3.1 图片标签

  • img标签 单边标签
<!-- 图像标签 --><imgsrc="图片的路径"alt="替换文本"title="提示文本"width="图片宽度"height="图片高度">
  • src : 指定需要展示图片的路径和文件名

src是必须属性

  • alt : 替换文本 , 当图片路径不正确时 , 才显示的文字
  • title : 提示文本 , 鼠标悬停的时候显示的文字

title属性不仅仅可以用于图片标签 , 还可以用于其他标签

  • width : 设置图片宽度

如果宽高就设置了一个 , 另外一个会等比例缩放 , 好处就是图片不变形

  • height : 设置图片高度

3.3.2 路径

3.3.2.1 绝对路径(了解)

目录下的绝对位置 , 可直接到达目标位置(能够直接定位) , 通常从计算机盘符开始的路径或者网路地址的路径

3.3.2.2 相对路径(掌握)

同级目录

  • 目标文件名字 例如 : <img src="目标文件.jpg">
  • ./目标文件名字 例如 : <img src="./目标图片.gif"> (推荐使用)

从当前文件开始出发找目标文件的过程 , 简单的来说相对HTML页面的位置

当前文件和目标文件在同一目录中

下级目录

  • 目标文件的文件夹/目标文件 例如 : <img src="img/目标图片.gif">
  • ./目标文件的文件夹/目标文件 例如 : <img src="./img/目标图片.gif">(推荐使用)

目标文件在下级目录中(当前文件与目标文件的文件夹在同一个目录下面)

上级目录

  • 上一级:../ 上两级:../../

目标文件在当前文件的上一级目录或者上N级目录

总结

相对路径有哪三种情况

  • 同级目录 : 直接写目标文件名字
  • 下级目录 : 直接写文件夹名/目标文件名字
  • 上级目录 : 直接下…/目标文件名字

VSCode中路径的快捷操作

  • 同级和下级目录 : ./ 之后选择即可
  • 上级目录 : …/ 之后选择即可

3.3.3音频标签

  • audio标签

应用场景 : 在页面中插入音频

<audiosrc="./music.mp3"controlsautoplayloop></audio>

音频标签三种格式分别是 :

MP3

,

Wav

,

Ogg

; 推荐使用

MP3

格式

音频标签常见属性

  • src : 音频路径
  • controls : 音频控件
  • autoplay : 自动播放
  • loop : 循环播放

3.3.4 视频标签

  • video标签

应用场景 : 在页面中插入视频

<videosrc="./video.mp4"controlsautoplaymutedloop></video>

视频标签三种格式分别是 : 分别是

MP4

,

WebM

,

Ogg

; 推荐使用

MP4

视频标签常见属性

  • src : 视频路径
  • controls : 视频控件
  • autoplay : 自动播放 → 谷歌浏览器中可以配合muted属性实现自动静音播放
  • loop : 循环播放

3.4 链接标签

  • a标签

应用场景 : 鼠标点击后 , 从一个页面跳转到另一个页面

<!-- 语法 --><ahref="跳转目标"target="窗口打开方式">文本或图像</a><ahref="https://www.mi.com/">外部链接</a><ahref="./01.html">内部链接</a><ahref="#">空链接</a>

超级链接标签最重要的属性

  • href属性

跳转目标

  • target属性

_self : 默认值 , 在当前窗口中跳转(覆盖原始窗口)

_blank : 在新窗口中跳转(保留原始窗口)

4. 列表标签

展示数据

4.1 无序列表标签

应用场景 : 在网页中展示一组无顺序之分的列表 , 如 : 新闻列表

<ul></ul>    ul表示无序列表 用于包含li标签
<li></li>    li表示列表的每一项
<ul><li>列表项1</li><li>列表项2</li><li>列表项3</li></ul><!-- 注意事项 -->
ul和li属于嵌套关系
ul标签中只允许包含li标签  
li标签可以嵌套任意元素及内容

ul 标签 : 表示无序列表

li 标签 : 表示列表的每一项

4.2 有序列表标签

应用场景 : 在网页中表示一组有顺序之分的列表 , 如 : 排行榜

<ol></ol>    ol表示无序列表 用于包含li标签
<li></li>    li表示列表的每一项
<ol><li>列表项1</li><li>列表项2</li><li>列表项3</li></ol><!-- 注意事项 -->
ol和li属于嵌套关系
ol标签中只允许包含li标签
li标签可以包含任意内容

ol 标签 : 表示有序列表

li 标签 : 表示列表的每一项

4.3 自定义列表标签

应用场景 : 在网页的底部导航中通常会使用自定义列表实现

自定义列表有三组标签: 
<dl></dl>     dl表示自定义列表 用于包含dt/dd标签
<dt></dt>     dt表示列表主题
<dd></dd>     dd表示列表的每一项内容
语法:
<dl><dt>名词1</dt><dd>名词1解释1</dd><dd>名词1解释2</dd><dd>名词1解释3</dd></dl><!-- 注意事项 -->
dl标签只允许包含dt/dd标签
dt/dd标签可以包含任意内容
  • 3个标签组成
  • dl标签 : 表示自定义列表
  • dt标签 : 表示列表主题
  • dd标签 : 表示列表的每一项内容

5. 表格标签

展示数据

5.1 表格的基本标签

应用场景 : 以行+列的方式整齐的展示数据 例如 : 股票价格 学生成绩表

表格标签:<table></table>      定义表格标签 , 用于包裹多个tr
表格一行:<tr></tr>             用于定义表格中的行 , 用于包裹td , 必须嵌套在 <table></table>标签中
表格一列:<td></td>             用于定义表格中的列(单元格),必须嵌套在<tr></tr>标签中
<tableborder="像素 例如 : 1"width="宽度"height="高度"><tr><td>内容</td><td>内容</td><td>内容</td></tr></table><!-- 注意事项 -->
table标签包含tr , tr标签包含td

3个标签组成

table标签 : 表示表格整体

tr标签 : 表示每行

td标签 : 表示每列(单元格)

5.2 表格相关属性

应用场景 : 设置表格基本展示效果
属性名属性值描述border数值设置表格边框alignleft , center , right设置对齐方式width数值设置宽度height数值设置高度cellspacing数值单元格与单元格的距离 , 默认2像素cellpadding数值单元格内容到单元格边框的距离 , 默认1像素rulesall细线边框

以上属性目前熟悉单词即可 , 实际开发时针对于样式效果推荐用CSS设置

5.3 表格标题和表头单元格标签

应用场景 : 在表格中表示整体大标题和一列小标题

<tableborder="1"width="500"height="200"align="center"cellspacing="0"cellpadding="0"><caption><h3>学生信息表</h3></caption><tr><th>姓名</th><th>年龄</th><th>性别</th></tr><tr><td>张三</td><td>18</td><td>女</td></tr><tr><td>李四</td><td>17</td><td>男</td></tr><tr><td>吴签</td><td>18</td><td>男</td></tr><tr><td>总结</td><td>郎才女貌</td><td>郎才女貌</td></tr></table>
  • 表格标题标签 : caption标签

书写在table标签内部

  • 表头单元格标签 : th标签

书写在tr标签内部 (用于替换td标签)

th标签 , 位于表格的第一行第一列小标题 , 默认居中加粗效果

5.4 表格的结构标签 (了解)

应用场景 : 让表格的内容结构分组 , 突出表格的不同部分 (头部 , 主体 , 底部) , 使语义更加清晰

  • thead : 表格头部
  • tbody : 表格主体
  • tfoot : 表格底部

表格结构标签写在table标签内部

表格结构标签内部用于包裹tr标签

表格的结构标签可以省略

5.5 合并单元格

应用场景 : 将水平或垂直多个单元格合并成一个单元格
属性名属性值说明rowspan合并单元格的个数跨行合并 , 将多行单元格垂直 (上下合并) 合并colspan合并单元格的个数跨列合并 , 将多列单元格水平 (左右合并) 合并

rowspan : 上下合并→只保留最上的 , 删除其他单元格

colspan : 左右合并→只保留最左的 , 删除其他单元格

不能跨结构合并

6. 表单标签

收集数据

表单域包含了文本框、多行文本框、密码框、隐藏域、复选框、单选框和下拉选择框等 , 用于采集用户的输入或选择的数据

6.1 form标签

所以表单标签需要放到form标签里

6.1.1 input系列标签属性取值

应用场景 : 在网页中显示收集用户信息的表单效果 , 如 : 登录页 , 注册页

<inputtype="属性值">

input单边标签

input标签可以通过type属性值的不同 , 展示不同效果 , 一共8个属性取值

标签名type属性值说明inputtext文本框 , 用于输入单行文本inputpassword密码框 , 用于输入密码inputradio单选框 , 用于多选一inputcheckbox多选框 , 用于多选多inputfile文件选择 , 用于之后上传文件inputsubmit提交按钮 , 点击之后提交数据给后端服务器inputreset重置按钮 , 点击之后恢复表单默认值inputbutton普通按钮 , 默认无功能 , 之后配合JS添加功能
input中value和placeholder区别

  • 由于HTML5的出现 , 使得表单的功能更加强大 , input的功能应用起来更加简单 , 从value到placeholder , 但是由于兼容问题 , placeholder只适合在移动端的项目 , IE6/7/8不支持 , 只能用value , 或者可以用其他方法模拟placeholder , 具体案例你可以看支付宝和财付通的登录和注册页面

value和placeholder的实际应用

  • value

如果用的是value,我们想鼠标focus后默认文字消失,移开后默认文字又重现,可以这样来写

  • placeholder

如果用的是placeholder , 我们就不需要JS了 , 因为它本身就自带focus和blur功能了 , 但是有时候设计师给我们的设计稿往往跟默认文字颜色是有区别

如何改变placeholder默认文字颜色 , 如下

  • 结构
<inputtype="text"placeholder="请输入手机号"class="inp-fon">
  • 样式
:-moz-placeholder{/* Mozilla Firefox 4 to 18 */color: #f00;}::-moz-placeholder{/* Mozilla Firefox 19+ */color: #f00;}input:-ms-input-placeholder,
textarea:-ms-input-placeholder{color: #f00;}input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder{color: #f00;}

6.1.2 input标签属性介绍

属性名说明placeholder占位符,提示用户输入内容的文本name名称,当前input控件的含义value改变按钮的名字checked默认选中某个单选或复选框multiple多文件上传

注意事项 : 同一组单选框或复选框 , name属性的值保持一致

6.1.2.1 文本框 type=“text” placeholder

应用场景 : 在网页中显示输入单行文本的表单控件
属性名type属性值说明placeholdertext占位符,提示用户输入内容的文本

6.1.2.2 密码框 type=“password” placeholder

应用场景 : 在网页中显示输入密码的表单控件
属性名type属性值说明placeholderpassword占位符,提示用户输入内容的文本

注意事项 : type属性值不要拼错或者多加空格 , 否则相当于设置了默认值状态 : text→文本框

6.1.2.3 单选框 type=“radio” name=“自定义类名” checked

应用场景 : 在网页中显示多选一的单选表单控件
属性名type属性值说明nameradio分组 , 相同name属性值单选框为一组 , 只能有一个被选中checkedradio默认选中

注意事项 :

name属性对于单选框有分组功能

有相同name属性值的单选框为一组 , 一组中只能同时有一个被选中

如果需要实现单选效果 , 需要设置相同的name属性值

单选框和多选框的默认选中 : checked

6.1.2.4 复选框 type=“checkbox” checked

应用场景 : 在网页中显示多选多的多选表单控件
属性名type属性值说明checkedcheckbox默认选中

注意事项 : 单选框和多选框的默认选中 : checked

6.1.2.5 文件选择 type=“file” multiple

应用场景 : 在网页中显示文件选择的表单控件
属性名type属性值说明multiplefile多文件选择

默认单文件上传

6.1.2.6 按钮 type=“submit / reset / button”

应用场景 : 在网页中显示不同功能的按钮表单控件
标签名属性值说明inputsubmit提交按钮 , 点击之后提交数据给后端服务器inputreset重置按钮 , 点击之后恢复表单默认值inputbutton普通按钮 , 默认无功能 , 之后配合JS添加功能

注意事项 :

如果需要实现以上按钮功能 , 需要配合form标签使用

form使用方法 : 用form标签把表单标签全部包裹起来即可

在这里插入图片描述

<formaction="地址 (后台程序员提供)"><!-- 1、文本框:text(type属性的默认值) -->
   昵称:<inputtype="text"placeholder="请输入您的昵称"><br><!-- 2、密码框:password -->
   密码:<inputtype="password"placeholder="请输入您的密码"><br><!-- 3、单选框:radio  必须设置相同的name属性才可以实现单选效果-->
   性别:<inputtype="radio"name="sex"checked>男
   <inputtype="radio"name="sex">女<br><br><!-- 4、多选框:checkbox -->
   爱好:<inputtype="checkbox"checked>敲代码
   <inputtype="checkbox"checked>熬夜
   <inputtype="checkbox">掉头发<br><br><!-- 5、文件选择:file --><inputtype="file"multiple><br><br><!-- 按钮 --><!-- 1、submit:提交按钮 提交表单内容到指定地址 --><inputtype="submit"><!-- 2、reset:重置按钮 --><inputtype="reset"><!-- 3、button:普通按钮 --><inputtype="button"value="普通按钮"></form>

6.2 button按钮标签

应用场景 : 在网页中显示用户点击的按钮
标签名属性值说明buttonsubmit提交按钮 , 点击之后提交数据给后端服务器buttonreset重置按钮 , 点击之后恢复表单默认值buttonbutton普通按钮 , 默认无功能 , 之后配合JS添加功能

注意事项 :

谷歌浏览器中button默认是提交按钮

button标签是双标签 , 更便于包裹其他内容 : 文字 , 图片等

在这里插入图片描述

 昵称:
<inputtype="text"placeholder="请输入您的昵称"><br><br><!-- 提交按钮 --><buttontype="submit">button提交按钮</button><!-- 重置按钮 --><buttontype="reset">button重置按钮</button><!-- 普通按钮 --><buttontype="button">button普通按钮</button>

6.3 select下拉菜单标签

应用场景 : 在网页中提供多个选择项的下拉菜单表单控件

标签组成

select标签 : 下拉菜单的整体

option标签 : 下拉菜单的每一项

常见属性

selected : 下拉菜单的默认选中

下拉框一般来说不能少于三个

在这里插入图片描述

籍贯:
<selectname="home"><option>武汉</option><option>上海</option><option>深圳</option><optionselected>火星</option></select>

6.4 textarea文本域标签

应用场景 : 在网页中提供可输入多行文本的表单控件

标签名 : textarea

常见属性

cols : 规定了文本域内可见宽度

rows : 规定了文本域内可见行数

注意事项 :

右下角可以拖拽改变大小

实际开发时针对于样式效果推荐用CSS设置

<textareacols="60"rows="6">我知道每日反馈是用textarea来做的</textarea>

6.5 label标签

应用场景 : 常用于绑定内容与表单标签的关系

标签名 : label

使用方法1

  • 使用label标签把内容 (如 : 文本) 包裹起来
  • 在表单标签上添加id属性
  • 在label标签的for属性中设置对应的id属性值

使用方法2

  • 直接使用label标签把内容 (如 : 文本) 和表单标签一起包裹起来
  • 需要把label标签的for属性删除即可
<!-- 方法1 -->
爱好:
<inputtype="checkbox"id="one"><labelfor="one">敲代码</label><!-- 方法2 --><label><inputtype="checkbox">玩游戏
</label>

7. 语义化标签

7.1 无语义化标签

应用场景 : 实际开发网页时会大量频繁的使用到div和span这两个没语义的布局标签

  • div标签 : (大盒子) 一行只显示一个 (独占一行) , 可以放文字 , 图片 , 超链接 , 其他任何标签和内容
  • span标签 : (小盒子)一行可以显示多个 , 可以放文字和超链接 , span里也可以放span

7.2 有语义化标签 (了解)

应用场景 : 在HTML5新版本中 , 推出了一些有语义的布局标签供开发者使用 , 移动端使用较多

在这里插入图片描述
标签名语义header网页头部nav网页导航footer网页底部aside网页侧边栏section网页区块article网页文章

<header>网页的头部</header><nav>网页的导航</nav><footer>网页的底部</footer><aside>网页的侧边栏</aside><section>网页的区块</section><article>网页的文章</article>

注意事项 :

HTML5的新特性都有兼容性问题 , 基本是IE9+ 以上版本的浏览器才支持

以上标签显示特点和div一致 , 但是比div多了不同的语义

8. 字符实体

8.1 HTML空格合并现象

应用场景 : 如果在html代码中同时并列出现多个空格、换行、缩进等,最终浏览器只会解析出一个空格

8.2 常见字符实体

应用场景 : 在网页中展示特殊符号效果时 , 需要使用字符实体替代
显示结果描述实体名称实体编号空格

&nbsp;
&#160;

<大于号

&lt;
&#60;

小于号

&gt;
&#62;

&和号

&amp;
&#38;

"引号

&quot;
&#34;

’撇号

&apos;

(IE不支持)

&#39;

¢分

&cent;
&#162;

£镑

&pound;
&#163;

¥元

&yen;
&#165;

§节

&sect;
&#167;

©版权

&copy;
&#169;

®注册商标

&reg;
&#174;

×乘号

&times;
&#215;

÷除号

&divide;
&#247;

注意事项 :

前端工程师需要记住

空格的字符实体是 :

&nbsp;

大于号的字符实体是 :

&gt;

小于号的字符实体是 :

&lt;

9. 标签速查

无序列表

<ul><li>榴莲</li><li>香蕉</li><li>苹果</li><li>臭豆腐</li></ul>

自定义列表

<dl><dt>服务支持</dt><dd>售后服务</dd><dd>上门服务</dd><dd>包换服务</dd></dl>

表格基本结构

<table><tr><td>姓名</td><td>性别</td><td>年龄</td></tr><tr><td>张三</td><td>男</td><td>18</td></tr></table>

单选按钮

<!-- 单选按钮 -->
 性别: <inputtype="radio"name="sex"checked> 男
       <inputtype="radio"name="sex"> 女 <br>

复选按钮

<!-- 复选按钮 -->
爱好: <inputtype="checkbox"> 吃饭
<inputtype="checkbox"> 睡觉
<inputtype="checkbox"checked> 打子豪 <br>

文本框

<!-- input 输入  type 类型  --><!-- 文本框 -->
 昵称:<inputtype="text"placeholder="请您输入昵称"><br>

密码框

<!-- 密码框 -->
密码:<inputtype="password"placeholder="请您输入密码"><br>

文件上传

<!-- 文件上传  文件域 -->
上传头像: <inputtype="file"multiple><br>

提交和重置按钮普通按钮

<!-- value 值 --><inputtype="submit"value="提交所填"><inputtype="reset"value="重新填写"><inputtype="button"value="普通按钮">

下拉按钮

<select><option>北京</option><option>上海</option><option>广州</option><option>深圳</option><optionselected>武汉</option><option>曹县</option></select>

文本域

 请您留言:
<textareacols="100"rows="10"maxlength="10"></textarea>

label标签的基本使用

<!-- 方法1  for 和 id 搭配 --><inputtype="radio"name="sex"id="nv"><labelfor="nv">女</label><inputtype="radio"name="sex"id="nan"><labelfor="nan">男</label><br><!-- 方法2 直接包含 -->
    婚否:
    <label><inputtype="radio"name="marry">
        未婚
    </label><label><inputtype="radio"name="marry">
        丧偶
    </label>
="请您输入密码"> <br>

文件上传

<!-- 文件上传  文件域 -->
上传头像: <inputtype="file"multiple><br>

提交和重置按钮普通按钮

<!-- value 值 --><inputtype="submit"value="提交所填"><inputtype="reset"value="重新填写"><inputtype="button"value="普通按钮">

下拉按钮

<select><option>北京</option><option>上海</option><option>广州</option><option>深圳</option><optionselected>武汉</option><option>曹县</option></select>

文本域

 请您留言:
<textareacols="100"rows="10"maxlength="10"></textarea>

label标签的基本使用

<!-- 方法1  for 和 id 搭配 --><inputtype="radio"name="sex"id="nv"><labelfor="nv">女</label><inputtype="radio"name="sex"id="nan"><labelfor="nan">男</label><br><!-- 方法2 直接包含 -->
    婚否:
    <label><inputtype="radio"name="marry">
        未婚
    </label><label><inputtype="radio"name="marry">
        丧偶
    </label>
标签: html css html5

本文转载自: https://blog.csdn.net/m0_71250713/article/details/125286797
版权归原作者 LinOcO 所有, 如有侵权,请联系我们删除。

“HTML基础和标签”的评论:

还没有评论