0


【前端】一文带你了解 HTML

🥰🥰🥰来都来了,不妨点个关注叭!
👉博客主页:欢迎各位大佬!👈

在这里插入图片描述

文章目录

1. HTML 是什么?

HTML】是超文本标记语言,一般直接在浏览器上运行!
(既然也是一门语言,其实也需要学习很多内容的,但在本专栏里,我们仅需初步对它有个了解,能够看懂并学会使用常用的标签即可)

2. HTML 结构

2.1 标签是什么?

HTML 代码是由"标签"构成的,标签又是什么呢~如下:

<body> hello </body>

在这里插入图片描述
解释说明
1)body 为标签名,放在<>里面
2)大部分标签成对出现,在上述标签中,有开始标签和结束标签,只有少数标签仅有开始标签,称为"单标签"
3)开始标签和结束标签之间写的是标签的内容,这里写的是 hello
4)开始标签中可能会带有 “属性”(这个在后续代码中详细说明)

2.2 HTML文件的基本结构

学什么语言,我们最开始敲的都是 hello world,这里我们也开启一下 hello world 吧!

<html><head><title>我的第一个页面</title></head><body> 
      hello world!</body></html>

在这里插入图片描述
这是 HTML 的基本结构,html 标签放在最开始,里面分为 head 头部 + body 身体~(跟人的结构好相似!hhh)
其中,title 写在 head 里面,是页面的标题
解释说明
1)html 标签是整个 html 文件的根标签
2)head 标签中写页面的属性
3)body 标签中写的是页面上显示的内容
4)title 标签中写的是页面的标题

运行后,显示的结果如下:
在这里插入图片描述

2.3 HTML中标签层次结构

在上述基本结构中:
1)head 和 body 是 html 标签的子标签,即 html 是 head 和 body 的父标签
2)title 是 head 的子标签,head 是 title 的父标签
3)head 和 body 之间是兄弟关系
4)title 也是 html 的子标签,html 是 title 的爷爷标签,毕竟 title 的父标签 head 也是 html 的子标签,但是爷爷标签听起来怪怪的,因此,html 也是 title 的父标签

标签之间的结构关系,构成了一个 DOM (Document Object Mode —— 文档对象模型缩写) ,如下:
在这里插入图片描述

3. vscode 编写HTML的使用方法

编译器只是一个工具,vscode 用来编写 HTML 代码是十分方便的,且 vscode 非常轻量!

3.1 下载方式

1)可以直接在官网上下载:https://code.visualstudio.com/download
2)如果是联想的笔记本,可以直接在联想商店下载

3.2 如何创建

1)选择一个文件夹,在该文件夹下创建一个文本文件
在这里插入图片描述
2)修改文件名,改成 XXX.html,这里我修改为 demo2.html (用英文取名字,不要出现中文)
在这里插入图片描述
3)html文件 创建完成如下:
在这里插入图片描述
4)直接将 demo2.html 文件 拖拽至 vscode,即可在 vscode 中打开
在这里插入图片描述
或者在 vscode 中 点击 File ——> 点击 Open File 找到刚创建的 demo2.html 即可
在这里插入图片描述
以后再创建 html 文件 可直接在 vscode 这里创建,可以看到我们 code 文件夹也有了 demo3.html
在这里插入图片描述

3.3 如何运行

建议使用的浏览器:Microsoft Edge 和 Google
双击 html 文件,即可运行
在这里插入图片描述
赶紧试试上述代码,看一看 hello world 吧~

3.4 快速生成代码框架

输入 html,可以看到如下所示的图片:点击 html:5 可以快速生产代码框架
在这里插入图片描述
如下述代码所示:

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head><body></body></html>

解释说明】此处我们不必深究,有一个简单了解即可

1)<!DOCTYPE html> 称为 DTD(文档类型定义),描述当前的文件是一个 HTML5 的文件 
2)<html lang="en"> 其中 lang 属性为"en"表示当前页面是一个 "英语页面"(有些浏览器会根据此处的声明提示是否进行自动翻译成中文)3)<meta charset="UTF-8"> 描述页面的字符编码方式,确保不会中文乱码
4)<meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    name="viewport" 其中 viewport 指的是设备的屏幕上能用来显示我们的网页的那一块区域 
    content="width=device-width, initial-scale=1.0" 在设置可视区和设备宽度等宽,并设置初始缩放为不缩放

在这里插入图片描述

4. HTML常见标签

这里是标签简写以及全称,我们可以对照来理解:https://www.runoob.com/html/html-tag-name.html

4.1 注释标签

<!--注释内容--!>

快捷键】ctrl + / 可以快速进行注释和取消注释
注释的原则
1)要和代码逻辑一致
2)尽量使用中文(这里就需要尽量使用中文,毕竟注释要给人看的,以理解清楚为主)
3)传递正能量(不要写一些奇奇怪怪的东西上去)

4.2 标题标签

有6个标题标签,从 h1 - h6,数字越大,字体越小!

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

运行以下代码,我们观察其结果:

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Test页面</title></head><body>
    hello world!
    <!-- hello world1 --><h1>1级标题</h1><h2>2级标题</h2><h3>3级标题</h3><h4>4级标题</h4><h5>5级标题</h5><h6>6级标题</h6></body></html>

在这里插入图片描述
这里 hello world1 被注释掉了,所以只能看到 hello world,同时可以清楚看到标题的字体大小

如何记忆
有人总是弄混淆,到底是 h1 的字体最大还是 h6 的字体最大呢,毕竟 h6 后面跟的数字 6 很大嘛!
其实可以这样记忆,比如我家生了6个孩子,老大老二老三…一直到老六,根据生活常识我们知道,老大最大,老六最小,因此,这里也是如此,h1 的字体最大,h6 的字体最小!

4.3 段落标签

<p>段落</p>

注意
1)当前 p 标签描述的段落,前面没有缩进(在 CSS 这期内容中将会学习到)
2)p 标签与下面的换行 br 标签的区别在于,p 标签表示一个段落,段落与段落之间有间隙,即有行间距,而换行,两行文字之间没有行间距,两行文字紧挨在一起

4.4 换行标签

需要注意的是,html 中直接换行不会真的换行,且在文字之间输入多个空格只相当于一个空格

<br/>

注意
1)br 是一个单标签,无需结束标签
2)最好加上 / ,不建议直接写成 br

这是在人民日报上找的金句,如果这样写不加段落标签或者换行标签,看似是一行一行且有间距的:

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Test页面</title></head><body>
    每次归程,都是为了更好出发;每次停歇,都是为了积攒力量。——《带上温暖,继续拼搏》

    生活的真谛从来都不在别处,就在日常一点一滴的奋斗里。——《生活的真谛在点滴奋斗中》
    
    一切伟大成就,都是接续奋斗的结果;一切伟大事业,都需要在继往开来中推进。——《这些话,真提气》
    
    几代青年,皆以梦为马,不断探索中国未来。而今天的我们,则有机会把整个世界作为想象的行动的空间,去一展拳脚、实现抱负。——《给青年的一封信》
    
    “日月不肯迟,四时相催迫。”在这个属于奋斗者的新时代,人人都有追梦的权利,人人也都是梦想的筑造者。——《我们都是追梦人》
</body></html>

但得到的页面将会是:一直写下去,直到页面一行不够才会在另一行写
在这里插入图片描述
加段落标签和换行标签后:

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Test页面</title></head><body><p>每次归程,都是为了更好出发;每次停歇,都是为了积攒力量。——《带上温暖,继续拼搏》</p><p>生活的真谛从来都不在别处,就在日常一点一滴的奋斗里。——《生活的真谛在点滴奋斗中》</p></p>一切伟大成就,都是接续奋斗的结果;一切伟大事业,都需要在继往开来中推进。——《这些话,真提气》</p>
    
    几代青年,皆以梦为马,不断探索中国未来。而今天的我们,则有机会把整个世界作为想象的行动的空间,去一展拳脚、实现抱负。——《给青年的一封信》<br/>
    
    “日月不肯迟,四时相催迫。”在这个属于奋斗者的新时代,人人都有追梦的权利,人人也都是梦想的筑造者。——《我们都是追梦人》
</body></html>

得到的页面如下:可以清楚看到 p 标签和 br 标签的作用
在这里插入图片描述

4.5 格式化标签

  1. 加粗 strong 标签 / b 标签
  2. 倾斜 em 标签 / i 标签
  3. 删除线 del 标签 / s 标签
  4. 下划线 ins 标签 / u 标签

上述4个标签既有开始标签也有结束标签,并不是单标签!!!

举个栗子,加深对这4个标签的印象~

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Test页面</title></head><body><strong>今天</strong><em>我和小明去超市</em>买东西,这个东西正在做活动,原价<s>99</s>,现价<ins>50</ins></body></html>

页面显示的情况如下:
在这里插入图片描述

4.6 图片标签

在一个页面中,还需要有图片,不然仅有文字太干巴啦!
需要使用 img 标签,其中 img 标签必须带有 src 属性,表示图片的路径

<img src ="dog.jpg">

此时这样写是 dog.jpg 在 html 中的同级目录中,所以省去了前面的路径,如果不同级这样写是有问题的!

关于目录结构

  1. 相对路径:以 html 文件所在位置为基准,找到图片的位置 i.同级目录:直接写文件名即可,如上述写的 src = "dog.jpg"在这里插入图片描述 ii.下一级路径:src="图片/dog.jpg"在这里插入图片描述 iii.上一级路径:src="../dog.jpg"

在这里插入图片描述

  1. 绝对路径:一个完整的磁盘路径或者网络路径 i.磁盘路径:D:\vi\Microsoft VS Code\code.dog.jpg ii.网络路径:https://...(不推荐该写法,受网络波动,可能加载不出来图片)

【关于图片路径地址分类】

1)网络地址:(只要有网络)
2)本地地址:
i. 绝对地址
ii.相对地址

在这里把 dog.jpg 和 html 文件放在同一级目录,有如下写法:

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Test页面</title></head><body><img src ="dog.jpg"></body></html>

在这里插入图片描述
上述页面,可以看到狗的图片太大了,占满了整个页面,通过属性可以进行调整!

img 标签的其它属性:

  1. alt替换文本,即当图片不能正确显示的时候,就会显示一个替换文字
  2. title提示文本(并不是图片的标题哦),当鼠标放在图片上的时候,就会有这个提示
  3. width/height控制宽度高度,高度和宽度一般仅需修改一个,另一个会等比例缩放,如果同时修改,就会造成图片大小失衡的情况
  4. border边框,参数是宽度的像素(但是这个一般使用CSS设定)

注意
1)属性可以有多个,但是需要记住,不能写在标签前
2)属性之间用空格分割,可以是多个空格,也可以是换行
3)属性之间不讲究顺序
4)属性使用"键值对"的格式来表示

通过这样的属性设置:

<img src="dog.jpg" alt="狗" title="这是一只狗" width="500px" border="5px">

此时可以看到,狗的图片小很多,并且设置了边框,将鼠标放在图片上,会提示"这是一只狗",如果图片无法显示出,则会显示"狗",如下:

在这里插入图片描述

4.7 超链接标签

超链接标签 a 双标签 其中里面必须有 herf 后面跟的是链接地址
通过 target:打开方式,设置,默认是_self.即不写 target 默认就是直接在该页面打开,如果设置 target = _blank 则是用新的标签页打开!

<a href="http://www.baidu.com"> 百度 </a>

在这里插入图片描述
一般都是用另一个页面打开:即将打开方式设置为_blank

<a href="http://www.baidu.com" target="_blank"> 百度 </a>

在这里插入图片描述
下面介绍链接的 6 种形式:
1)外部链接:href 引用其它网站的地址(如上述的百度地址…)

<a href="http://www.baidu.com"> 百度 </a>

2)内部链接:网站内部页面之间的链接,写相对路径即可
在一个目录中,创建 demo2.html 和 demo3.html,这两个文件同级目录
在 demo2.html 文件中写以下代码,点击即可跳转到 demo3.html 文件

<a href ="demo3.html"> 点击我可跳转到 demo3.html </a>

在这里插入图片描述
3)空链接:使用 # 在 href 中占位

<a href ="#"> 空链接</a>

在这里插入图片描述

4)下载链接:href 对应的路径是一个文件(可以是压缩包,比如可以使用zip文件)

<a href ="demo.zip">下载该文件</a>

在这里插入图片描述
5)网页元素链接:可以给图片等任何元素添加链接,即点击该元素可跳转到某一页面(把元素放到 a 标签)

<a href ="http://www.baidu.com"><img src= dog.jpg width="300px" border="5px"></a>

在这里插入图片描述

6)锚点链接:可以快速定位到页面中的某个位置(点该位置,跳转到该页面的另一个位置)
用法:在要跳转到某位置的地方在标签内设置 id (即唯一标识),在 a 标签中写

<a href="#id">内容</a>

,即可点击此处跳转到页面中的某个位置

<a href="#1">电影1</a><a href="#2">电影2</a><a href="#3">电影3</a><p id="1">
 电影1演员表 <br>
 电影1内容<br>
 电影1场景<br>
 电影1拍摄<br>
 电影1要素<br>
 电影1画面<br>
 电影1声音<br>
 电影1蒙太奇<br>
 电影1长镜头<br>...<br><br><br></p><p id="2">
电影2演员表 <br>
电影2内容<br>
电影2场景<br>
电影2拍摄<br>
电影2要素<br>
电影2画面<br>
电影2声音<br>
电影2蒙太奇<br>
电影2长镜头<br>...<br><br><br></p><p id="3">
电影3演员表 <br>
电影3内容<br>
电影3场景<br>
电影3拍摄<br>
电影3要素<br>
电影3画面<br>
电影3声音<br>
电影3蒙太奇<br>
电影3长镜头<br>...<br><br><br></p>

具体演示图如下:
在这里插入图片描述
加粗样式
超链接还是比较实用的,需要我们掌握~

禁止 a 标签跳转

<a href="javascript:void(0);"> 或者 <a href="javascript:;">

4.8 表格标签

4.8.1 表格基本标签

1)table 标签:表示整个表格
2)tr 标签:表示表格的一行
3)td 标签:表示一个单元格
4)th 标签:表示表头单元格,会居中加粗
5)thead 标签:表格的头部区域(注意:与 th 是有区别的,范围比 th 标签大)
6)tybody标签:表格得到主体区域
其中:table 包含 tr,tr 包含 td 或者 th

表格标签有一些属性,这些属性都需要放到 table 标签中:
1)align:是表格相对于周围元素的对齐方式,align=“center” (不是内部元素的对齐方式)
2)border:表示边框,1 表示有边框(数字越大,边框越粗),“” 表示没边框
3)cellpadding内容距离边框的距离,默认 1 像素
4)cellspacing单元格之间的距离,默认为 2 像素
5)width / height设置尺寸
可以用于设置大小边框等(但是实际一般使用 CSS 方式来设置)
【注意】这五个属性,vscode 不会进行提示

下面是使用用例,通过以下案例,我们更好理解表格的这些标签,代码如下(以下代码写在 body 标签里):

<table border="1" width ="200px",height ="100px"><thead><th>
                姓名
            </th><th>
                年龄
            </th><th>
                性别
            </th></thead><tbody><tr><td>张三</td><td>18</td><td>男</td></tr><tr><td>李四</td><td>18</td><td>男</td></tr><tr><td>王五</td><td>21</td><td>女</td></tr></tbody></table>

展示的页面如下:
在这里插入图片描述
使用表格标签,应先用 table 标签包起来,thead 表示表格头区域,“头部”,其中用 th 表示表头的单元格,tbody 表示主体区域,“身体”,其中 tr 表示表格的一行,td 表示表格中的单元格

4.8.2 合并单元格

跨行合并:

rowspan="n"

(其中 n 表示行数)
跨列合并:

colspan="n"

(其中 n 表示列数)

使用思路如下:

1)先确定跨行还是跨列
2)找好目标单元格
【补充】跨列合并,左侧是目标单元格;跨行合并,上方是目标单元格,即需要注意顺序,第一个单元格是目标单元格,剩下的为多余单元格,顺序不能颠倒
3)删除的多余的单元格

注意】在编写代码前,思路是很重要的,我们可以先想好,再去用代码实现,不要慌,一步一个脚印~

举个例子,比如上述代码张三和李四的性别和年龄均相同,性别合并成一个单元格,年龄合并成一个单元格:

<table border="1" width ="200px",height ="100px"><thead><th>
                姓名
            </th><th>
                年龄
            </th><th>
                性别
            </th></thead><tbody><tr><td>张三</td><td rowspan="2">18</td><td rowspan="2">男</td></tr><tr><td>李四</td></tr><tr><td>王五</td><td>21</td><td>女</td></tr></tbody></table>

展示的页面如下:
在这里插入图片描述

4.9 列表标签

1)无序列表ul li
2)有序列表ol li
3)自定义列表dl(总标签) dt(小标签) dd(围绕标题展开说明)

作用】主要用于布局,使页面更加整齐好看~

举个例子,感受一下,代码如下:

<hr><h3>无序列表</h3><ul><li>哈哈</li><li>嘻嘻</li></ul><hr><h3>有序列表</h3><ol><li>哈哈</li><li>嘻嘻</li></ol><hr><h3>自定义列表</h3><dl><dt>标题1</dt><dd>哈哈</dd><dd>嘻嘻</dd><dd>啦啦</dd><dt>标题2</dt><dd>yes</dd><dd>no</dd></dl>

展示页面如下:
在这里插入图片描述
补充!!! hr 标签为分割符!!!

4.10 表单标签

表单是什么? 表单是让用户输入信息的重要途径

分成两个部分,如下:
1)表单域:包含表单元素的区域,重点是 form 标签(是 form !!! 与 from 区分开来)
2)表单控件:包括输入框、提交按钮等,重点是 input 标签

1. form 标签

<form action="http:ss//www.baidu.com" method="get">...</form>

含义描述要把数据按照什么方式,提交到哪个页面中

2. input 标签
input 标签的含义:各种输入控件,单行文本框, 按钮, 单选框, 复选框等等

input 标签有如下属性:
type(必须有):取值的种类有很多,比如button、checkbox、text、file、image、password、radio
name: 给 input 起名字,尤其是对于单选按钮,
具有相同的 name 才能多选一!!!

value: input 中的默认值.
checked: 默认被选中(用于单选按钮和多选按钮)
maxlength: 设定最大长度

看到 name 属性,我们会想 name 和 id 有什么区别?
name 和 id 的区别:
i. 数量:name 可以重复,而 id 不能重复,具有唯一性
ii. 作用:id 给 js 用的(给前端用的),name 给后端用的

1)文本框

<input type="text">

2)密码框

<input type="password">

3)单选框

<input type="radio" name="sex" value="男"> 男 
<input type="radio" name="sex"> 女 

注意单选框之间必须具备相同的 name 属性,才能实现多选一效果

4)复选框

<input type="checkbox"> 听音乐
<input type="checkbox"> 跑步 
<input type="checkbox"> 打羽毛球

5)普通按钮

<input type="button" value="普通按钮">

6)提交按钮

 <input type="submit" value="提交">

注意提交按钮必须放到 form 标签内,点击后就会尝试给服务器发送
7)清空按钮

<input type="reset" value="清空">

注意清空按钮也必须放在 form 中,点击后会将 form 内所有的用户输入内容重置
8)选择文件

<input type="file">

下面再补充几个标签:
1)label 标签
搭配 input 使用,点击 lable 也能选中对应的单选框或者复选框,提升用户体验
需要在 label 标签中设置 for 属性,指定当前 label 和 哪个相同的 id 的 input 标签对应,此时点击才有效果,否则无用!

<label for="male">男</label><input id="male" type="radio" name="sex">

2)select 标签
下拉菜单

<select><option>北京大学</option><option selected ="selected">上海大学</option><option>清华大学</option></select>

其中,option 中定义 selected=“selected” 表示默认选中,如果不设置哪个选项为默认选中,则第一个选项是默认选中的!

3)textarea 标签

<textarea rows="4" cols="50"></textarea>

注意
i. 文本域中的内容,即为默认内容,其中空格也会有影响
ii. 其中 rows 和 cols 也都不会直接使用,都是用 CSS 来改的(后续讲解)

整体使用上述标签,试一试效果吧!

<form action="http:ss//www.baidu.com" method="get">
            姓名:<input type="text"><br>
            密码:<input type="password"><br>
            性别:<input type="radio" name="sex" value="男"> 男 &nbsp;&nbsp;&nbsp;<input type="radio" name="sex"> 女 &nbsp;&nbsp;&nbsp;<br>
            爱好:<input type="checkbox"> 听音乐 &nbsp;&nbsp;&nbsp;<input type="checkbox"> 跑步 &nbsp;&nbsp;&nbsp;<input type="checkbox"> 打羽毛球 <br><input type="button" value="普通按钮">&nbsp;&nbsp;&nbsp;<input type="submit" value="提交">&nbsp;&nbsp;&nbsp;<input type="reset" value="清空">&nbsp;&nbsp;&nbsp;<button type="button">button</button><br>
            头像:<input type="file"><br><label for="male">男</label><input id="male" type="radio" name="sex"><br>
            大学:<select><option>北京大学</option><option selected ="selected">上海大学</option><option>清华大学</option></select><br>

            备注:<textarea rows="4" cols="50"></textarea></form>

效果如下:

在这里插入图片描述

4.11 无语义标签

1)div 标签分割

<div>
        哈哈
 </div><div>
        嘻嘻
 </div>

效果如下:
在这里插入图片描述
2)span 标签跨度

<span>哈哈</span><span>嘻嘻</span>

展示效果如下:
在这里插入图片描述
我们会思考,span 标签有什么用呢?这里用空格也可以实现呀~ 下面一起看看这个案例:

<span style="color: brown;">哈哈</span><span style="color: aquamarine;">嘻嘻</span>

展示效果如下:
在这里插入图片描述
但是使用空格,我们就不能区分前一个区域和后一个区域,无法进一步实现颜色的不同,这时候 span 的作用就来啦!可以对文本进行分组,设置属性!

div 独占一行 span 不独占一行 这两者用于网页的布局~

5. HTML 特殊字符

有些特殊的字符在 html 文件中不能直接表示出来,这里介绍 4 个特殊字符

1)空格 :&nbsp;(一个&nbsp;相当于一个空格,要几个空格就&nbsp;几次)2)小于号:&lt;3)大于号:&gt;4)按位与:&amp;

HTML 只是描述了页面的骨架结构,即一个简单的框架,使用 CSS 可以针对页面进行进一步美化,下期将介绍 CSS ~ 敬请期待!

✨✨✨本期内容到此结束啦~✨✨✨

标签: 前端 html

本文转载自: https://blog.csdn.net/m0_61814277/article/details/140506121
版权归原作者 明天不吃。 所有, 如有侵权,请联系我们删除。

“【前端】一文带你了解 HTML”的评论:

还没有评论