当前位置: 首页 > article >正文

【前端基础】--- HTML

在这里插入图片描述 个人主页  :  9ilk
   专栏  :  前端基础


文章目录

  • 🏠 初识HTML
  • 🏠 HTML结构
    • 认识HTML标签
    • HTML文件基本结构
    • 标签层次结构
    • 快速生成代码框架
  • 🏠 HTML常见标签
    • 注释标签
    • 标题标签 h1-h6
    • 段落标签 p
    • 换行标签 br
    • 格式化标签
    • 图片标签 img
    • 超链接标签 a
    • 表格标签
    • 列表标签
    • 表单标签
    • 无语义标签
  • 🏠 HTML特殊字符

🏠 初识HTML

什么是前端?

   Web前端是用来给用户呈现一个个网页的,一个软件通常情况下是由于前端+后端完成的。生活中我们遇到的Web页面,PC端程序页面,移动端APP页面等就是前端页面,前端是指用户在浏览器中看到并与之交互的部分。

什么是HTML?

  HTML(超文本标记语言)是前端开发的基础,它用来定义网页的结构和内容。所谓超文本 指的是文本、声音、图片、视频、表格、链接等。

我们可以简单的使用记事本编写一个html页面:

  • 编写hello world
    在这里插入图片描述
  • 保存之后修改文件后缀为html文件
    在这里插入图片描述注:上面只是简单展示一下html文件的效果,实际上这是不标准的。

🏠 HTML结构

认识HTML标签

<body>hello</body>
  • 标签名(body)放到<>中
  • 大部分标签成对出现,<body>开始标签,</body>结束标签
  • 少数标签只有开始标签,称为"单标签"
  • 开始标签和结束标签之间,写的是标签的内容
  • 开始标签中可能会带有属性, id属性相当于给这个标签设置了一个唯一的标识符(身份证号码)
<body id="myId">hello</body>

HTML文件基本结构

<html><head><title>第一个页面</title></head><body>hello world</body>
</html>
  • html标签是整个html文件的根标签(最顶层标签)
  • head标签中写页面的属性
  • body标签中写的是页面上显示的内容
  • title标签中写的是页面的标题

标签层次结构

标签之间存在两种关系:

  • 父子关系
  • 兄弟关系
<html><head><title>第一个页面</title></head><body>hello world</body>
</html>

其中:

  • headbody是html的子标签(html就是headbody父标签)
  • titlehead子标签headtitle父标签
  • headbody之间是兄弟关系

在Chrome浏览器下我们可以使用开发者工具查看页面结构,具体操作是按F12或右键审查元素,开启开发者工具,然后切换到Elements标签,就可以看到页面结构的细节
在这里插入图片描述
我们看到标签之间的结构关系,构成了一个DOM树

DOMDocument Object Mode(文档对象模型)的缩写,每一个标签相当于是一个对象,程序员可以通过代码拿到这些对象,拿到之和进行增删查改。

在这里插入图片描述

快速生成代码框架

我们之前演示的步骤是:记事本编写内容,ctrl s保存,修改文件扩展名,但是这样开发效率是比较低下的,我们可以使用一些开发工具进行编写HTML。前端开发工具有很懂,比如VSCode,SubLime,IDEA等,其中VSCode是企业开发前端非常常用的一个工具,我们使用VSCode来演示。

VSCode中有三个比较好的插件能帮我们快速开发:

  • Auto Rename Tag
    在这里插入图片描述
    对于双标签,使用该插件时,修改开始标签,此时结束标签也会更着改变。
    在这里插入图片描述
  • view in browser
    在这里插入图片描述
    该插件可以帮助我们在VSCode中直接打开浏览器查看我们HTML网页的效果。
    在这里插入图片描述
  • Live Server
    在这里插入图片描述
    该插件可以实时地在浏览器中预览更改。你只需要保存文件,浏览器会自动刷新并显示最新的修改效果。

快速生成代码框架:在VSCode中创建完html文件之后,直接输入!,按tab键此时就能生成代码的主体框架。

<!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>

说明:

  • <!DOCTYPE html>称为DTD(文档类型定义),描述当前的文件是一个HTML5的文件
  • <html lang="en">其中lang属性表示当前页面是一个**“英语页面”.**这里暂时不用管 (有些浏览器会根据此处的声明提示是否进行自动翻译)
  • <meta charset="UTF-8">描述页面的字符编码方式.没有这一行可能会导致中文乱码,编写代码的编码方式和浏览器解码方式需要一致
  • <meta name="viewport" content="width=device-widith, initial-scale=1.0">这是移动端适配用的。name="viewport" 其中 viewport 指的是设备的屏幕上能用来显示我们的网页的那一块区域content="width=device-width, initial-scale=1.0"设置可视区和设备宽度等宽, 并设置初始缩放为不缩放 (这个属性对于移动端开发更重要一些)

🏠 HTML常见标签

注释标签

注释标签是不会显示在界面上的,它的目的是提高代码的可读性

<!-- 我是注释 -->
  • 注释快捷键ctrl + / 快捷键可以快速进行注释/取消注释
  • 注释的原则:,在web页面可以按f12查看我们的html文件源码,也就是说用户可能通过一定方式拿到我们html代码,可能看到我们注释,所以注释要和代码逻辑一致,尽量使用中文,不要传递负能量。

标题标签 h1-h6

标题标签有六个,从h1-h6数字越大,则字体越小,也越来越细

<h1>hello</h1>
<h2>hello</h2>
<h3>hello</h3>
<h4>hello</h4>
<h5>hello</h5>
<h6>hello</h6>

演示效果:

在这里插入图片描述

段落标签 p

把一段较长的文本粘贴到html中,我们会发现并没有分成段落,这是因为vscode中换行对浏览器渲染不起作用,需要使用标签来进行换行:

在这里插入图片描述

  • p标签表示一个段落,即开始标签和结束标签之间内容表示一个段落
<p>这是一个段落</p>

通过p标签改进上述代码,每个段落放到p标签中:

在这里插入图片描述
效果展示:

在这里插入图片描述
注意

  • p标签之间存在一个空隙。
  • 当前的p标签描述的段落,前面还没有缩进,后面可以使用CSS来设置。
  • 目前自动根据浏览器宽度来决定排版。
  • html内容首尾处的换行,空格均无效
    在这里插入图片描述
  • html中文字之间输入的多个空格只相当于一个空格

在这里插入图片描述

换行标签 br

brbreak的缩写,表示换行

  • br是一个单标签(不需要结束标签)
  • br标签不像p标签那样带有一个很大的空隙。
  • <br/>规范写法不建议写成<br>

我们可以使用br标签对之前文本进行一个换行:

在这里插入图片描述
注:换行标签换行之后的间隙比段落标签的间隙要小。

格式化标签

  • 加粗 : strong标签和b标签。
  • 倾斜 : em标签和i标签。
  • 删除线 : del标签和s标签
  • 下划线 : ins标签和u标签
<strong>strong 加粗</strong>
<b>b 加粗</b>
<em>倾斜</em>
<i>倾斜</i>
<del>删除线</del>
<s>删除线</s>
<ins>下划线</ins>
<u>下划线</u>

效果展示:

在这里插入图片描述
注意

  • 对于格式化标签,使用CSS也可以实现类似的效果,实际开发中以CSS为主。
  • 前面介绍的每种格式化标签中,前者和后者视觉效果上其实没有什么差别,只不过在语义上,前者起到强调作用

图片标签 img

img标签必须带有src属性,表示图片的路径

<img src="rose.jpg">

此时要把 rose.jpg 这个图片文件放到和 html 中的同级目录中。

关于目录结构

  • 相对路径 : 以 html 所在位置为基准, 找到图片的位置。同级路径使用./+文件名表示,而上一级路径可以使用../表示。
  • 绝对路径一个完整的磁盘路径, 或者网络路径

img标签的其他属性:

  • alt : 替换文本,当文本不能正确显示的时候,会显示一个替换的文字
  • title : 提示文本 ,鼠标放到图片上,就会有提示。
  • width/height : 控制高度和宽度,一般改一个就行,另外一个会等比例缩放.否则就会图片失衡。
  • border : 边框,参数是宽度的像素.但是一般使用CSS来设定。

注意

  1. 属性可以有多个, 不能写到标签之前。
  2. 属性之间用空格分割, 可以是多个空格, 也可以是换行
  3. 属性之间不分先后顺序
  4. 属性使用键值对的格式来表示。

img标签不同属性展示

  • alt属性使用示例
<!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>
<strong>hello 冰冰《/strong></br>
<img src="hts:/" alt:"图片加载失败">

图片加载失败就可以使用alt属性进行提示,它的文案只有加载失败才会展示,我们这里故意放个错误的图片链接来展示效果 :

在这里插入图片描述

  • title属性使用示例
<!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
<strong>hello Nagisa</strong></br>
<img src="./Nagisa.png" alt="图片加载失败" title="关注米汀谢谢喵">

我们需要把鼠标放到图片上才能看到title属性描述的信息:

在这里插入图片描述

  • width/height使用示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-wwidth, initial-scale=1.0
<title>Document</title>
</head>
<strong>hello Nagisa</strong></br>
<img src="./Nagisa.png" alt="图片加载失败"title="关注米江谢谢喵
width="280px" height="180px" >
<!--px是像素 像素越大图片越大-->

width控制宽度, height控制高度 , 它们单位是px,表示像素,px越大图片越大。

在这里插入图片描述

  • border使用示例:
<!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>
<strong>hello Nagisa</strong></br>
<img src="./Nagisa.png" alt="图片加载失败"title="关注米汀谢谢喵
width="280px" height="180px" border="1px">

border是用来给属性加边框的,属性值越大,边框越粗

在这里插入图片描述

超链接标签 a

a标签主要有两个属性:

  • href : 该属性必须具备,表示点击后会跳转到哪个页面
  • target : 打开方式默认_self 如果是_blank 则用新的标签页打开。

herf属性介绍:herf表示链接,它有多种类型的取值。

  • 外部链接: href 引用其他网站的地址。
<a href="http://www.baidu.com">百度</a>
  • 内部链接: 网站内部页面之间的链接,写相对路径即可。
<!-- 1.html -->
我是 1.html
<a href="2.html">点我跳转到 2.html</a>
<!-- 2.html -->
我是 2.html
<a href="1.html">点我跳转到 1.html</a>
  • 空链接 : 使用 #href 中占位
<a href="#">空链接</a>

在这里插入图片描述

  • 下载链接 : href 对应的路径是一个文件,(可以使用 zip 文件)
<a href="test.zip">下载文件</a>
  • 网页元素链接: 可以给图片等任何元素添加链接(把元素放到 a 标签中)
    在这里插入图片描述
    此时点击图片就能跳转页面。
  • 锚点链接: 可以快速定位到页面中的某个位置。使用#加上目标位置的id,就可以创建指向这个位置的链接。
<a href="#one">第一集</a>
<a href="#two">第二集</a>
<a href="#three">第三集</a>
<p id="one">
第一集剧情 <br>
第一集剧情 <br>
...
</p>
<p id="two">
第二集剧情 <br>
第二集剧情 <br>
...
</p>
<p id="three">
第三集剧情 <br>
第三集剧情 <br>
...
</p>

请添加图片描述
注意:锚点链接只能在同一页面内跳转。

target属性:该属性存在两个取值,表示链接的目标会在哪个窗口或标签页中打开,两个取值分别为_self_blank

  • _self : 指定链接在当前窗口或标签页中打开,它是target属性的默认行为。

请添加图片描述

  • _blank : 指定链接在新的窗口或标签页中打开。

请添加图片描述

表格标签

基本使用

  • table标签 : 表示整个表格
  • tr : 表示表格的一行
  • td : 表示一个单元格
  • th : 表示表头单元格居中加粗
  • thead : 表格的头部区域(注意和th区分,范围是比th要大的)。
  • tbody : 表格的主体区域

包含关系table 包含 tr , tr 包含 td 或者 th

说明

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

代码演示

<!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><table><tr><td>姓名</td><td>性别</td><td>年龄</td></tr><tr><td>张三</td><td></td><td>18</td></tr><tr><td>李四</td><td></td><td>28</td></tr><tr><td>张红</td><td></td><td></td></tr></table>
</body>
</html>

效果展示:

在这里插入图片描述
我们要的表格需要有格子,这里没显示是因为浏览器默认是0像素,我们可以设置table标签的border属性:

 <table border="2px">

效果展示:

在这里插入图片描述
但是这个表格有点小了,如果我们想变大,可以设置table标签的widthheight属性:

   <table border="2px" width="500px" height="300px">

在这里插入图片描述
但是我们发现表格单元格之间有间隙,不是单纯的一条细直线,这是因为浏览器默认单元格之间的间隙有一定间距,值为2,我们可以更改cellspacing

     <table border="2px" width="500px" height="300px" cellspacing="0">

在这里插入图片描述
还有问题就是单元格内元素位置偏左了,我们可以设置cellpadding:

   <table border="2px" width="600px" height="500px" cellspacing="0" cellpadding="70px">

在这里插入图片描述
如果我们想让整体表格整体放到网页中间,我们可以修改align属性,它默认是left

  <table border="2px" width="600px" height="500px" cellspacing="0" cellpadding="70px"align="center">

在这里插入图片描述
注意:align控制的是表格整体而不是内容。

thead && tbody && th

  • theadth搭配

在这里插入图片描述
在这里插入图片描述
注意thead里面使用th的内容是会居中+加粗展示的。

  • tbody:正常情况下,我们都是把表头放到thead里,表格内容放到tbody里。
    在这里插入图片描述

合并单元格

  • 跨行合并 : rowspan = “n”
  • 跨列合并 : colspan = “n”

步骤 :

  1. 先确定跨行还是跨列
  2. 找好目标单元格(跨列合并,左侧是目标单元格;跨行合并,上方是目标单元格。
  3. 删除的多余的单元格。

合并行

在这里插入图片描述

效果展示

在这里插入图片描述

合并列:

在这里插入图片描述
效果展示:

在这里插入图片描述

列表标签

主要使用来布局的,整齐好看。

  • 无序列表ul li
  • 有序列表ol li
  • 自定义列表dl(总标签) dt(小标题) dd(具体内容)

注意

  1. 元素之间是并列关系。
  2. ul / ol 中只能放 li 不能放其他标签, dl中只能放 dtdd
  3. li 中可以放其他标签
  4. 列表带有自己的样式, 可以使用 CSS 来修改(例如前面的小圆点都会去掉) 。

无序列表使用示例

VSCode快捷键快速生成列表标签

在这里插入图片描述

<!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><h1>这是无序列表</h1><ul><li>内容1</li><li>内容2</li><li>内容3</li></ul>
</body>
</html>

效果展示:

在这里插入图片描述
这里每一个无序列表前面都是用一个实心圆开头,实际上可以通过更改ul标签的type属性来换成其他样式:

属性描述
typedisc square circleHTML5不支持。HTML4.01已废弃。规定列表的项目符号的类型

type = “square” 列表以方块开头 :

在这里插入图片描述

有序列表使用示例

     <h1>这是有序列表</h1><ol><li>内容1</li><li>内容2</li><li>内容3</li><li>内容4</li></ol>

效果展示:
在这里插入图片描述
同样的,有序列表也可以更改type属性,换成英文字母计数,罗马数字计数等:

type取值含义
a表示小写英文字母
A表示大写英文字母
I表示大写罗马数字编号
i表示小写罗马数字编号
1表示阿拉伯数字编号(默认)

我们发现我们数字都是从1开始的,如果我想更改起始计数, 可以更改start属性:

     <ol type="i" start="2"><li>内容1</li><li>内容2</li><li>内容3</li><li>内容4</li></ol>

效果展示 :
在这里插入图片描述

自定义列表使用示例

     <dl><dt> 自定义列表显示内容<dd>内容1</dd><dd>内容2</dd><dd>内容3</dd></dt></dl>

效果展示 :

在这里插入图片描述

表单标签

表单是让用户输入信息的重要途径 ,用表单标签来完成服务器的一次交互,它主要分为两个部分:

  • 表单域 : 包含表单元素的区域 重点是 form 标签。
  • 表单控件: 输入框, 提交按钮等, 重点是 input 标签。

form标签

<form action="test.html">
... [form 的内容]
</form>

form标签的action属性定义了表单提交的目标地址,也就是服务器接收并处理提交数据的地方,如果 action 属性为空或者没有指定,表单会默认提交到当前页面的 URL整体上form标签描述了要把数据按照什么方式,提交到哪个页面中。

input标签

input标签用于创建 HTML 表单中的各种用户输入控件。它允许用户输入数据,如文本、密码、文件选择等,并将其发送到服务器。它有以下几个属性:

  • type : 必须要设置该属性,该属性取值种类多 , button, checkbox,text,file,image,password,radio等。
  • name : 给input起了个名字,尤其是对于单选按钮,具有相同的name才能多选一。
  • value : input中的默认值
  • checked : 默认被选中,(用于单选按钮和多选按钮)。
  • maxlength : 设定最大长度。

input标签常见type

  1. 文本框
<input type="text">

测试代码:

<!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><form action="">姓名<input  type="text"></form>
</body>
</html>

注意:表单控件需要搭配表单域进行编写

效果展示:

在这里插入图片描述

  1. 密码框
<input type="password">

测试代码:

<!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><form action="">姓名<input  type="text"><br>密码<input  type="password"></form>
</body>
</html>

效果展示:

在这里插入图片描述

  1. 单选框
    <form action="">姓名<input  type="text"><br>密码<input  type="password"><br>性别<input  type="radio"><input  type="radio"></form>

效果展示:
在这里插入图片描述
我们发现这里我们两个性别都能选,这显然是不符合实际的,要想实现多选一单选框之间必须具备相同的 name 属性。

    <form action="">姓名<input  type="text"><br>密码<input  type="password"><br>性别<input  type="radio" name="gender"><input  type="radio" name="gender"></form>

效果展示:

请添加图片描述
如果需要更细化一点,在打开页面时,选择性别之前可以设置个默认选项,此时可以设置默认选项值 checked

    <form action="">姓名<input  type="text"><br>密码<input  type="password"><br>性别<input  type="radio" name="gender"><input  type="radio" name="gender" checked="checked"></form>

注意:如果将取值都设置为checked,此时哪个默认展示取决于浏览器。

  1. 复选框
    <form action="">姓名<input  type="text"><br>密码<input  type="password"><br>性别<input  type="radio" name="gender"><input  type="radio" name="gender" checked="checked"><br>爱好<input  type="checkbox">吃饭<input  type="checkbox">睡觉<input  type="checkbox">打豆豆   </form>

效果展示:此时是能达到多选多的效果的

在这里插入图片描述

  1. 普通按钮
    <form action="">姓名<input  type="text"><br>密码<input  type="password"><br>性别<input  type="radio" name="gender"><input  type="radio" name="gender" checked="checked"><br>爱好<input  type="checkbox">吃饭<input  type="checkbox">睡觉<input  type="checkbox">打豆豆<br><input  type="button" ></form>

效果展示:

在这里插入图片描述
我们可以发现这个按钮显示出来是有点单一的,我们可以更改value属性添加一些提示信息:

<input  type="button" value="这是一个普通按钮">

效果展示:

在这里插入图片描述
还有一个问题就是,既然是按钮,点击之后应该有些反应才对,要想有反应需要搭配JavaScript

<input type="button" value="我是个按钮" onclick="alert('hello')">

效果展示:

在这里插入图片描述

  1. 提交按钮
    <form action="https://www.bilibili.com/"> //course提交到bilibili<input type="text" name="course"><input type="submit" ></form>

type="submit":这个按钮的作用是提交表单,触发浏览器将表单数据发送到action属性指定的 URL。它会将表单中的所有数据一起发送,默认使用表单中的 method 属性(通常是 GET 或 POST)。

效果展示:URL?后面就是提交的数据。

在这里插入图片描述

  1. 清空按钮
    <form action="https://www.bilibili.com/"><input type="text" name="course"><input type="submit" value="提交按钮"><input type="reset" value="重置按钮"></form>

效果展示:

请添加图片描述

  1. 选择文件
    <form action="https://www.bilibili.com/"><input type="text" name="course"><input type="submit" value="提交按钮"><input type="reset" value="重置按钮"><input type="file" value="选择文件按钮"></form>

效果展示:点击选择文件, 会弹出对话框, 选择文件。

请添加图片描述

lable标签

搭配input使用 点击 label 也能选中对应的单选/复选框, 能够提升用户体验 。

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

for 属性: 指定当前 label 和哪个相同 id input 标签对应,(此时点击才是有用的)

效果展示:

请添加图片描述

select标签

该标签主要是用来设置下拉菜单的。

    <select><option value="">请选择年份</option><option value="">2004</option><option value="">2005</option><option value="">2006</option><option value="">2007</option></select>

注意:第一个option是默认先展示的。 比如下面先展示“请选择年份”

在这里插入图片描述

  • option中定义 selected="selected" 表示默认选中
    <select><option value="">请选择年份</option><option value="" selected="selected">2004</option><option value="">2005</option><option value="">2006</option><option value="">2007</option></select>

效果展示:

在这里插入图片描述

textarea标签

该标签用于创建一个多行的文本输入区域,通常用于让用户输入较长的文本,比如评论、描述、留言等。

<body><label for="male"></label><input type="radio" name="sex" id="male"><label for="female"></label><input type="radio" name="sex" id="female"><br><select><option value="">请选择年份</option><option value="" selected="selected">2004</option><option value="">2005</option><option value="">2006</option><option value="">2007</option></select><br><textarea rows="10" cols="30">个人介绍</textarea>
</body>

效果展示:

在这里插入图片描述
小细节:

在这里插入图片描述

无语义标签

  • div 标签, division的缩写, 含义是分割。
  • span 标签, 含义是跨度。

它们相当于是两个盒子,用于网页布局。

  • div独占一行的, 是一个大盒子。
  • span 不独占一行, 是一个小盒子。
<!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><div><div><span>吃饭</span><span>睡觉</span><span>打豆豆</span></div><div>吃饭</div><div>睡觉</div><div>打豆豆</div></div>
</body>
</html>

效果展示:

在这里插入图片描述
我们可以看到span标签的内容是没有独占一行的,而div标签里的内容整体是独占一行的

🏠 HTML特殊字符

<!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><p>我准备开始编写内容     开始编写内容</p></body>
</body>
</html>

效果展示 :

在这里插入图片描述
我们发现中间的多个空格并不能展示出来,我们之前也讲过了,空格在HTML中属于特殊字符,是不能直接表示的,像这样的特殊字符还有:

  • 空格: &nbsp ;
  • 小于号 : &lt ;
  • 大于号: &gt ;
  • 按位与: &amp ;

其中html标签就是用 < > 表示的,因此内容里如果存在 < > , 就会发生混淆,所以文本中我们常用&lt&gt来表示<>。具体的特殊字符还有很多,我们可以自行查找:HTML特殊字符编码对照表


完。

相关文章:

【前端基础】--- HTML

个人主页  :  9ilk    专栏  :  前端基础 文章目录 &#x1f3e0; 初识HTML&#x1f3e0; HTML结构认识HTML标签HTML文件基本结构标签层次结构快速生成代码框架 &#x1f3e0; HTML常见标签注释标签标题标签 h1-h6段落标签 p换行标签 br格式化标签图片标签 img超链接标签…...

黑马V11版 最新Java高级软件工程师课程-JavaEE精英进阶课

课程大小&#xff1a;60.2G 课程下载&#xff1a;https://download.csdn.net/download/m0_66047725/90615581 更多资源下载&#xff1a;关注我 阶段一 中台战略与组件化开发专题课程 阶段二 【物流行业】品达物流TMS 阶段三 智牛股 阶段四 千亿级电商秒杀解决方案专题 …...

C#插件与可扩展性

外接程序为主机应用程序提供了扩展功能或服务。.net framework提供了一个编程模型,开发人员可以使用该模型来开发加载项并在其主机应用程序中激活它们。该模型通过在主机和外接程序之间构建通信管道来实现此目的。该模型是使用: System.AddIn, System.AddIn.Hosting, System.…...

CVPR‘25 | 高文字渲染精度的商品图文海报生成

本文分享阿里妈妈智能创作与AI应用团队在图文广告创意方向上提出的商品图文海报生成模型&#xff0c;通过构建字符级视觉表征作为控制信号&#xff0c;可以实现精准的图上中文逐像素生成。基于该项工作总结的论文已被 CVPR 2025录用&#xff0c;并在阿里妈妈业务场景落地&#…...

Golang|抽奖相关

文章目录 抽奖核心算法生成抽奖大转盘抽奖接口实现 抽奖核心算法 我们可以根据 单商品库存量/总商品库存量 得到每个商品被抽中的概率&#xff0c;可以想象这样一条 0-1 的数轴&#xff0c;数轴上的每一段相当于一种商品&#xff0c;概率之和为1。 抽奖时&#xff0c;我们会生…...

RT-Thread开发文档合集

瑞萨VisionBoard开发实践指南 RT-Thread 文档中心 RT-Thread-【RA8D1-Vision Board】 RA8D1 Vision Board上的USB实践RT-Thread问答社区 - RT-Thread 【开发板】环境篇&#xff1a;05烧录工具介绍_哔哩哔哩_bilibili 【RA8D1-Vision Board】基于OpenMV 实现图像分类_哔哩哔哩_…...

rulego-server是一个开源程序,是一个轻量级、无依赖性的工作流自动化平台。支持 iPaaS、流式计算和 AI 能力。

一、软件介绍 文末提供程序和源码下载学习 RuleGo-Server 是一个基于 RuleGo 构建的轻量级、高性能、模块化和集成友好的自动化工作流程平台。可用于自动化编排、iPaaS&#xff08;集成平台即服务&#xff09;、API 编排、应用编排、AI 编排、数据处理、IoT 规则引擎、AI 助手…...

鸿蒙系统开发状态更新字段区别对比

在鸿蒙系统开发中&#xff0c;状态管理是构建响应式UI的核心机制&#xff0c;主要通过装饰器&#xff08;Decorators&#xff09;实现字段的状态观测与更新。根据鸿蒙的版本&#xff08;V1稳定版和V2试用版&#xff09;&#xff0c;支持的装饰器及其特性有所不同。以下是主要状…...

抽象的https原理简介

前言 小明和小美是一对好朋友&#xff0c;他们分隔两地&#xff0c;平时经常写信沟通&#xff0c;但是偶然被小明发现他回给小美的信好像被人拆开看过&#xff0c;甚至偷偷被篡改过。 对称加密算法 开头的通信过程比较像HTTP服务器与客户端的通信过程&#xff0c;全明文传输…...

HTML理论题

1.什么是HTML? 超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言。 2.DOCTYPE 的作用是什么?标准与兼容模式(混杂模式)各有什么区别? DOCTYPE 的作用是告知浏览器的解析器用什么文档标准解析这个文档。 标准模式:用于…...

nginx-基础知识(二)

目录 虚拟主机 虚拟主机的功能 虚拟主机的划分方式 基于IP地址进行划分 基于域名进行划分 正向/反向代理 正向代理 反向代理 正向代理和反向代理的区别 负载均衡 负载均衡的类型 负载均衡的作用 nginx并发量比较高的原因 负载均衡的算法 会话保持 虚拟主机 虚拟…...

Ubuntu上安装Mysql

步骤 1&#xff1a;安装 MySQL Server sudo apt update sudo apt install mysql-server -y这将安装最新版本的 MySQL 8.0 以及所有依赖组件。 步骤 2&#xff1a;检查安装是否成功 mysql --version sudo systemctl status mysql如果状态是 active (running)&#xff0c;说明成…...

idea maven 命令后控制台乱码

首先在idea中查看maven的编码方式 执行mvn -v命令 查看编码语言是GBK C:\Users\13488>mvn -v Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: D:\maven\apache-maven-3.6.3\bin\.. Java version: 1.8.0_202, vendor: Oracle Corporation, runt…...

C# dll 打包进exe

Framework4.x推荐使用 Costura.Fody 1. 安装 NuGet 包 Install-Package Costura.Fody工程自动生成packages文件夹&#xff0c;300M左右。生成FodyWeavers.xml、FodyWeavers.xsd文件。 2. 自动嵌入 编译后&#xff0c;所有依赖的 DLL 会被自动嵌入到 EXE 中。 运行时自动解压…...

【数据融合实战手册·实战篇】二维赋能三维的5种高阶玩法:手把手教你用Mapmost打造智慧城市标杆案例

在当今数字化时代&#xff0c;二三维数据融合技术的重要性不言而喻。二三维数据融合通过整合二维数据的结构化优势与三维数据的直观性&#xff0c;打破了传统数据在表达和分析上的局限&#xff0c;为各行业提供了更全面、精准的数据分析手段。从智慧城市建设到工业智能制造&…...

ValueError: model.embed_tokens.weight doesn‘t have any device set

ValueError: model.embed_tokens.weight doesn’t have any device set model.embed_tokens.weight 通常在深度学习框架(如 PyTorch)中使用,一般是在处理自然语言处理(NLP)任务时,用于指代模型中词嵌入层(Embedding layer)的权重参数。下面详细解释: 词嵌入层的作用 …...

解决:QTcpSocket: No such file or directory

项目场景&#xff1a; 使用QTcpSocket进行网络编程&#xff1a; 调用connectToHost连接服务器&#xff0c;调用waitForConnected判断是否连接成功&#xff0c;连接信号readyRead槽函数&#xff0c;异步读取数据&#xff0c;调用waitForReadyRead,阻塞读取数据。 问题描述 找不…...

六、LangChain Agent 最佳实践

1. 架构设计与组件选择 (1) 核心组件分层设计 Model(LLM驱动层) 生产环境推荐:使用 gpt-4-1106-preview 或 Anthropic Claude 3 等高性能模型,结合 model.with_fallbacks() 实现故障转移(如备用模型或本地模型)。本地部署:选择 Llama3-70B 等开源模型,搭配 Docker 或 …...

uni-app 安卓10以上上传原图解决方案

在Android 10及以上版本中&#xff0c;由于系统对文件访问的限制&#xff0c;使用chooseImage并勾选原图上传后&#xff0c;返回的是图片的外部存储路径&#xff0c;如&#xff1a;file:///storage/emulated/0/DCIM/Camera/。这种外部存储路径&#xff0c;无法直接转换成所需要…...

Python爬虫实战: 有道翻译

一、引言 在全球化进程不断加速的当下,语言交流的需求日益增长,翻译服务的重要性愈发凸显。有道翻译作为一款备受欢迎的在线翻译工具,其蕴含的数据具有极高的价值,可广泛应用于自然语言处理研究、翻译教学以及语言学习软件的开发等领域。 然而,为保护自身数据资源和网络安…...

CSS 文件格式

A QFrame#andrFrm[status"android_en"] A&#xff1a;表示父类或顶层窗口的类型。如果 A 是一个自定义的类名&#xff0c;确保该类已经正确注册到 Qt 系统中。QFrame&#xff1a;表示具体的控件类型。#andrFrm&#xff1a;表示控件的对象名称&#xff08;通过 setOb…...

支付宝商家转账到账户余额,支持多商户管理

大家好&#xff0c;我是小悟 转账到支付宝账户是一种通过 API 完成单笔转账的功能&#xff0c;支付宝商家可以向其他支付宝账户进行单笔转账。 商家只需输入另一个正确的支付宝账号&#xff0c;即可将资金从本企业支付宝账户转账至另一个支付宝账户。 该产品适用行业较广&am…...

3.Chromium指纹浏览器开发教程之chromium119版本源码拉取

获取Chromium最新版源码 Git是一个分布式版本控制系统&#xff0c;用于管理代码的版本和协作开发&#xff0c;它是目前最流行和广泛使用的版本控制系统之一。在Chromium项目中&#xff0c;通常使用gclient来获取Chromium的源代码&#xff0c;并使用Git来对代码进行版本控制和管…...

使用Jasypt对配置文件内容加密

使用Jasypt 配置文件内容加密 一、背景 在软件开发过程中&#xff0c;配置文件扮演着至关重要的角色&#xff0c;它存储着应用程序运行所需的各种参数和设置&#xff0c;例如数据库连接信息、API 密钥、第三方服务的认证信息等。然而&#xff0c;这些配置文件中的信息往往包含…...

《Spring Boot 测试框架指南:@SpringBootTest与Mockito的最佳实践》

大家好呀&#xff01;&#x1f44b; 今天我要和大家聊聊Spring Boot测试的那些事儿。作为一名Java开发者&#xff0c;写代码很重要&#xff0c;但写测试同样重要&#xff01;&#x1f4af; 想象一下&#xff0c;你建了一座漂亮的房子&#x1f3e0;&#xff0c;但如果没有质量检…...

【计算机视觉】OpenCV项目实战- Artificial-Eyeliner 人脸眼线检测

Artificial-Eyeliner 人脸眼线检测 项目介绍运行方式运行步骤常见问题及解决方法1. dlib 安装失败其他注意事项 2. 缺少 make / gcc3. **依赖库安装问题**&#xff1a;4. *人脸关键点检测失败&#xff1a;5. 眼线效果不理想&#xff1a;6. 实时处理延迟&#xff1a;7. 保存文件…...

工作总结(十二)——迁移svn单项目到gitlab上,保留历史提交记录

文章目录 前言一、目的二、操作步骤1.创建项目库2.复制历史提交者账号3.复制待迁移项目以及历史记录4.push到gitlab远程仓库 总结 前言 本系列文章主要记录工作中一些需要记录的内容 一、目的 因为一些原因&#xff0c;我需要将svn库上的某个项目迁移到公司的gitlab库管理平台…...

Flash存储器(二):SPI NAND Flash与SPI NOR Flash

目录 一.存储架构 二.接口与封装 三.特性对比 四.典型应用场景 4.1 SPI NOR Flash 4.2 SPI NAND Flash 五.技术演进与市场趋势 六.选择建议 6.1 选择SPI NOR的场景 6.2 选择SPI NAND的场景 SPI NAND Flash和SPI NOR Flash是嵌入式设备中常用的存储器。下面通过全面对…...

Git Flow

Git Flow深度解析&#xff1a;企业级分支管理实战指南 前言 在持续交付时代&#xff0c;分支策略决定团队协作效率。Git Flow作为经典的分支管理模型&#xff0c;被Apache、Spring等知名项目采用。2023年JetBrains开发者调查报告显示&#xff0c;Git Flow仍是中大型项目最常用…...

吃透LangChain(五):多模态输入与自定义输出

多模态数据输入 这里我们演示如何将多模态输入直接传递给模型。我们目前期望所有输入都以与OpenAl 期望的格式相同的格式传递。对于支持多模态输入的其他模型提供者&#xff0c;我们在类中添加了逻辑以转换为预期格式。 在这个例子中&#xff0c;我们将要求模型描述一幅图像。 …...