从0开始开发一个简单web界面的学习笔记(HTML类)

文章目录

  • 什么是HTML页面
  • vscode 开放工具搭建
  • 第一个HTML页面编写
  • vscode 如何快速生成代码框架
  • html标签——注释、标题、段落、换行标签
  • 格式化标签
  • img 标签(src 属性01)
  • img 属性02(alt、title、width/height、border)
  • a标签href属性
  • a标签target属性
  • 表格标签01 基本属性
  • 表格标签02 表格头部+表格主体+单元格合并
  • 列表标签 无序列表
  • 列表标签 有序列表+自定义列表
  • 表单域
  • input 文本框
  • input 密码框
  • input 单选框
  • input复选框、普通按钮
  • input 提交清空上传文件
  • lable标签、select标签、textarea标签
  • 无语义标签 div、span
  • 特殊字符
  • ☁️结语


什么是HTML页面

HTML叫做超文本标记语言
把它拆分一下拆成:
超文本:(意味着页面支持文本、声音、图片、视频、表格、链接)
标记:(在页面上展示数据就需要标签啦,这些标签就组成了一个个的标记)

HTML页面是运行在浏览器上面的

vscode 开放工具搭建

  1. 点击去下载vscode
  2. 去下插件

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

第一个HTML页面编写

双标签:标签有开始有结束
在这里插入图片描述

单标签:只有一个标签

html:html文件根标签
head:编写页面相关的属性
title:页面的标题
body:页面的内容展示信息

相当于是DOM树,所有的标签都是html的子标签,headbody是兄弟标签, headtitle是父子标签。每一个标签相当于是一个对象,程序员可以通过这些代码拿到这些对象,拿到之后就可以对这些对象进行增删查改。

关于DOM树可以查看这篇文章:什么是DOM?你了解DOM树吗?

vscode 如何快速生成代码框架

快速生成代码框架
! + 回车

生成结果:
在这里插入图片描述

html标签——注释、标题、段落、换行标签

注释标签,能被用户看到

<!--这是注释-->

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

<h1>标题1</h1>
<h2>标题1</h2>

段落标签:

<p>段落标签</p>

如果你直接按回车,它会解析成空格,展示在页面上。

换行标签:换行标签换行后,行间隙比段落标签间隙小

<br/>

<br/>是规范写法,不建议写成<br>

格式化标签

在工作中,一般都是以CSS来实现的,但是HTML也可以实现同样的效果

加粗标签

<strong>加粗标签</strong>
或者
<b>加粗标签</b>

倾斜

<em>倾斜标签</em>
或者
<i>倾斜标签</i>

删除线

<del>删除线</del>
或者
<s>删除线</s>

下划线

<ins>下划线</ins>
或者
<u>下划线</u>

每一个效果的第一种写法除了它本身的效果,还起到强调的效果,强调可以让文本被爬虫获取到。

img 标签(src 属性01)

img 标签必须搭配着src来使用
src是用来指定图片路径的(绝对路径/相对路径)

<img src="图片路径">

绝对路径:直接写图片路径 或者 网络上的图片资源
相对路径:./xxx.png 或者 ./img/xxx.png 或者 …/xxx.png

img 属性02(alt、title、width/height、border)

alt属性:替换文本,当文本不能正确显示的时候,会显示一个替换的文字。alt后面的文案,只有当图片加载出错的时候才会展示,如果图片加载成功,这个文案就不会显示

<img src="图片路径" alt="替换文字">

title属性:当你的鼠标移动到图片上时,显示文字

<img src="图片路径" title="描述">

示例:
在这里插入图片描述

width/height:控制图片宽度高度,宽度和高度一般改一个就行,另外一个会等比例缩放。

<img src="图片路径" height="高度" width="宽度">

例如:

<img src="图片路径" height="100px">

px:像素,这一张图片上的亮点,像素越大,图片越大

border:边框,参数是宽度的像素,但一般用 CSS 来设定

<img src="图片路径" border="10px">

效果展示:这张图片附近的黑框框就是边框
在这里插入图片描述

img 后面 可以写多个属性,通过空格或者换行来分隔,属性的先后顺序不影响页面展示。

a标签href属性

超链接标签:a
它包括两个属性

  1. href:必须具备,表示点击后会跳转到那个界面
  2. target:打开方式。默认是_self(点击后改变当前页面),如果是_blank则用新的标签页打开。

href属性使用

  1. 通过文字跳转到对应的界面

    <a href="跳转界面的路径">
        页面上展示的内容
    </a>
    

    效果图:点击后跳转到对应的界面
    在这里插入图片描述

  2. 跳转到当前页面(刷新页面)

    <a href="#">跳转到当前页面(相当于刷新页面)</a>
    

    效果图:点击后仍在当前界面
    在这里插入图片描述

  3. 通过图片跳转到对应的界面

    <a href="跳转界面的路径">
        <img src="图片路径" >
    </a>
    

    效果图:点击后就会跳转到对应的界面
    在这里插入图片描述

a标签target属性

target:打开方式。默认是_self(点击后改变当前页面),如果是_blank则用新的标签页打开(另起一个页面)。

    <a href="要跳转到的网址" 
    	target="这里可以写 _self 或者 _blank">
        	跳转
    </a>

表格标签01 基本属性

表格标签基本使用 01 --table

table标签:表示整个表格
tr: 表示表格的一行
td:表示一个单元格
th:表示表头单元格,会居中加粗

table 包含trtr包含td或者th

表格标签有一些属性,可以用于设置大小边框等,但是一般使用CSS方式来设置。这些属性都要放到table标签中

  • align 是表格相对于周围元素的对齐方式。align=“center”(不是内部元素的对齐方式)
  • border表示边框,1表示有边框(数字越大,边框越粗),""表示没边框
  • cellpadding:内容距离边框的距离,默认1像素
  • cellspacing:单元格之间的距离,默认为2像素
  • width / height:设置尺寸

注意这几个属性,vscode都提示不出来

示例:


    <!--表格-->
    <table align="left" border="1" cellpadding="50"
           cellspacing="0" width="500" height="200">
           
        <!--第一行-->
        <tr>
            <td>姓名</td>
            <td>性别</td>
            <td>年龄</td>
        </tr>
        <!--第二行-->
        <tr>
            <td>张三</td>
            <td></td>
            <td>32</td>
        </tr>
        <!--第三行-->
        <tr>
            <td>李四</td>
            <td></td>
            <td>24</td>
        </tr>
    </table>

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

表格标签02 表格头部+表格主体+单元格合并

thead:表格的头部区域(注意和th区分,范围是比th要大的)
tbody:表格得到主体区域

thead 里面的内容居中+加粗展示。
我们通常把表头相关信息放在thead里,而表格内容相关信息放在tbody

示例:

    <table border="1" width="500"
     height="200" cellspacing="0"
      cellpadding="50"
      align="left">
        <!--第一行-->
        <thead>
            <tr>
                <th>姓名</th>
                <th>性别</th>
                <th>年龄</th>
            </tr>
        </thead>
        <tbody>
            <!--第二行-->
            <tr>
                <td>姓名</td>
                <td>性别</td>
                <td>年龄</td>
            </tr>
            <!--第三行-->
            <tr>
                <td>张三</td>
                <td></td>
                <td>32</td>
            </tr>
            <!--第四行-->
            <tr>
                <td>李四</td>
                <td></td>
                <td>24</td>
            </tr>
        </tbody>
    </table>

效果
在这里插入图片描述
表格合并

rowspan:合并行

<td rowspan = "要合并的单元格个数"> 内容 </td>

示例:合并两个"男"表格

    <table border="1" width="500"
     height="200" cellspacing="0"
      cellpadding="50"
      align="left">
        <!--第一行-->
        <thead>
            <tr>
                <th>姓名</th>
                <th>性别</th>
                <th>年龄</th>
            </tr>
        </thead>
        <tbody>
            <!--第二行-->
            <tr>
                <td>张三</td>
                <td rowspan="2"></td>
                <td>32</td>
            </tr>
            <!--第三行-->
            <tr>
                <td>李四</td>
                <!--因为合并了所以要删掉  <td>男</td> -->
                <td>24</td>
            </tr>
            <!--第三行-->
            <tr>
                <td>小红</td>
                <td></td>
                <td>18</td>
            </tr>
        </tbody>
    </table>

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

colspan:合并列

<td colspan= "要合并的单元格个数"> 内容 </td>

示例:合并"小红"和"女"这两格

            <!--第三行-->
            <tr>
                <td colspan="2">小红/女</td>
                <!-- 因为合并了所以要删掉 <td>女</td> -->
                <td>18</td>
            </tr>

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

列表标签 无序列表

无序列表[重要]ulli标签

	<ul>
        <li> 内容 </li>
    </ul>

可以使用快捷键快速生成li标签
在这里插入图片描述

示例:

    <h1>这是无序列表</h1>
    <!-- 
        <ul type=" ">
        
        引号内可以写:
        disc 实心圆 浏览器默认的展示方式
        square 实心方块
        circle 空心圆
    -->
    <ul type="disc">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ul>
    <ul type="square">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ul>
    <ul type="circle">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ul>

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

列表标签 有序列表+自定义列表

有序列表[用的不多]ol li

    <ol>
        <li> 内容 </li>
    </ol>

示例:

<h1>这是有序列表</h1>
    <ol>
        <li> </li>
    </ol>
    <!-- 
        <ol type=" ">

        引号内可以写:
        a 表示小写英文字母编号
        A 表示大写英文字母编号
        i 表示小写罗马数字编号
        I 表示大写罗马数字编号
        1 表示数字编号(默认)
     -->
    <ol type="a">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ol>
    <ol type="A">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ol>
    <ol type="i">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ol>
    <ol type="I">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ol>
    <ol type="1">
        <li>这是内容1</li>
        <li>这是内容2</li>
        <li>这是内容3</li>
    </ol>

效果图:
在这里插入图片描述
start 属性可以控制序号从几开始

    <ol start="序号">
        <li>内容</li>
    </ol>

示例:

    <ol start="5">
        <li>这是内容</li>
        <li>这是内容</li>
        <li>这是内容</li>
    </ol>

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

自定义列表

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

示例:

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

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

表单域

表单标签
用表单标签来完成服务器的一次交互

表单标签分为两个部分:

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

表单域

<form action="服务器地址"></form>

input 文本框

表单控件:输入框,提交按钮等,重点是input标签

input作用:让用户用来输入的。

input中有一个type属性,我们对type取不同的值,可以控制input的类型

    <form action="服务器地址">
        姓名 <input type="类型">
    </form>

文本框(typetext)
示例:

    <form action="服务器地址">
        姓名 <input type="text">
    </form>

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

可以看到他是单行输入。

input 密码框

密码框(typepassword)

    <form action="服务器地址">
        密码 <input type="password">
    </form>

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

input 单选框

    <input type="radio"><input type="radio">

效果:
在这里插入图片描述
但是这不是单选框,男和女都能选
在这里插入图片描述

解决方案:
name属性,如果name后面的值相同,那就只能选一个了~
示例:

    <input type="radio" name="gender"><input type="radio" name="gender">

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

如果我想要它默认选择女,该怎么实现呢?
我们可以借助checked属性
示例:

    <input type="radio" name="gender"><input type="radio" name="gender" checked="checked">

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

如果你写成这样:

   <input type="radio" name="gender" checked="checked"><input type="radio" name="gender" checked="checked">

那么网页一打开他是默认选了男,还是选了女呢?
这就要看你的浏览器了~~

input复选框、普通按钮

input复选框:

<input type="checkbox">

示例:

    <input type="checkbox">吃饭
    <input type="checkbox">睡觉
    <input type="checkbox">打游戏

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

普通按钮:

    <input type="button">

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

在按钮里写字:

    <input type="button" value="这是一个平平无奇的按钮">

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

按钮通常需要搭配JS来使用。

input 提交清空上传文件

提交按钮通常用来提交用户在前端填写的数据,把数据提交到服务器上。需要搭配form使用

    <form action="">
        <input type="submit">
    </form>

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

示例:

    <form action="">
        姓名:<input type="text" name="name">
        <input type="submit">
    </form>

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

如果我在表中填写错误,想要清空,该咋办呢?
可以使用reset

示例:

    <form action="">
        姓名:<input type="text" name="name">
        <input type="submit">
        <input type="reset">
    </form>

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

提交文件:

    <form action="">
        <input type="file">
    </form>

效果:点击后开始选择文件
在这里插入图片描述

lable标签、select标签、textarea标签

lable标签
通过label标签,可以将输入框、复选框、单选按钮等表单控件与它们的标签关联起来,从而提供更好的表单使用体验。当用户单击label标签时,会触发关联的表单控件,方便用户选择或输入数据。

示例:

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

name的作用是控制让两个选项只能有一个选中
for的作用是将它包裹的内容与那一个元素进行关联,通过id来关联起来

效果:点击文字“男”或者“女”即可选择。
在这里插入图片描述

select标签

<select></select>

效果:
在这里插入图片描述
select标签通常搭配option来使用
示例:

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

效果:
在这里插入图片描述
一打开网页,选项框里默认是第一个选项,如果要修改,可以使用selected
示例:

    <select name="" id="">
        <option value=""> --请选择年份-- </option>
        <option value="" selected="selected"> --2005-- </option>
        <option value=""> --2006-- </option>
        <option value=""> --2007-- </option>
    </select>

效果:现在默认是选择2005了~
在这里插入图片描述

textarea标签

    <textarea name="" id=""></textarea>

效果:
在这里插入图片描述
我们可以通过colsrows来控制它的大小
示例:

    <textarea name="" id="" cols="20" rows="20"></textarea>

效果:
在这里插入图片描述
在实际的开发中可以通过CSS来达到这样的效果

无语义标签 div、span

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

就是两个盒子,用于网页布局

  • div是单独占一行的,是一个大盒子
  • span不单独占一行,是一个小盒子

div标签
示例:

    <div>
        <!-- 独占一行 -->
        <div>吃饭</div>
        <div>睡觉</div>
        <div></div>
        
        <!-- 不独占一行 -->
        <div>
            <span>吃饭</span>
            <span>睡觉</span>
            <span></span>
        </div>
    </div>

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

特殊字符

有些特殊的字符在html文件中是不能直接表示的,例如:
空格:&nbsp
小于号:&lt
大于号:&gt
按位与:&amp

html标签就是用 < > 表示的因此内容里存在 < > ,就会发生混淆。

示例:

    <p>
        这里有四个空格&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;开始写
    </p>
    <p>&lt;&gt;&amp;</p>

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


☁️结语

请给自己些耐心,不要急于求成。
山外青山楼外楼,莫把百尺当尽头。
保持空杯心态加油努力吧!


都看到这里啦!真棒(*^▽^*)

可以给作者一个免费的赞赞吗,这将会鼓励我继续创作,谢谢大家

如有纰漏或错误,欢迎指正


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/722067.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

镜头跟踪的两种方法

方法一 (1) 原理&#xff1a;使球与摄像机保持固定的角度和距离 (2) 给Main Camera添加CamraCtrller.cs组件 public Transform Player;//小球的Transformprivate Vector3 offset;//小球与摄像机位置的偏移&#xff08;在三轴上的距离&#xff09;void Start(){offset Playe…

【LinkedList与链表】

目录 1&#xff0c;ArrayList的缺陷 2&#xff0c;链表 2.1 链表的概念及结构 2.2 链表的实现 2.2.1 无头单向非循环链表实现 3&#xff0c;LinkedList的模拟实现 3.1 无头双向链表实现 4&#xff0c;LinkedList的使用 4.1 什么是LinkedList 4.2 LinkedList的使用 5…

next.js v14 升级全步骤|迁移 pages Router 到 App Router

【概括】本文升级整体按照官网文档指引进行&#xff0c;在迁移 pages Router 前先看了官网的实操视频。 【注意】文章内对 .babel.ts、next.config.js 进行了多次更改&#xff0c;最终配置可见 报错3: Server Error ReferenceError: React is not defined 一、升级 Next.js 版…

基于Spark3.3.4版本,实现Standalone 模式高可用集群部署

目录 一、环境描述 二、部署Spark 节点 2.1 下载资源包 2.2 解压 2.3 配置 2.3.1 配置环境变量 2.3.2 修改workers配置文件 2.3.3 修改spark.env.sh文件 2.3.4 修改spark-defaults.conf 2.4 分发 2.5 启动服务 2.5.1 启动zookeeper 2.5.2 启动hdfs 2.5.3 启动spar…

20240611-WWDC2024-visionOS 2/Apple Intelligence/ARKit

目录 1 visionOS 2 1&#xff09;从2D图像提取左右眼的视角&#xff0c;生成空间照片——利用机器学习 2&#xff09;提供丰富的API和框架 2 Apple Intelligence 1&#xff09;自动对通知优先级排序、缩略通知、专注模式 2&#xff09;Siri可以根据屏幕内容执行相关操作 …

使用海康威视的SDK,利用WPF设计一个网络摄像头的显示控制程序(上位机)

目录 一、下载海康威视的SDK 1.1 关于SDK 1.2 关于API 1.3 关于DLL 1.4 下载海康威视的SDK 1.5 关于网络高清摄像机 二、对下载的SDK进行调试 三、利用Visual Studio打开项目的解决方案 3.1 Visual Studio 2022下载 3.2 关于句柄 四、打开WPF进行ui页面设计 4.1 关于…

《现代通信原理与技术》模拟调制与解调—FM 调制实验报告

摘要 本实验旨在通过 MATLAB 软件进行模拟调制与解调的实践&#xff0c; 加深对频率调制&#xff08;Frequency Modulation, FM&#xff09;原理的理解&#xff0c;并掌 握 FM 调制与解调的实现方法。 关键词&#xff1a;MATLAB 引言 在现代通信系统中&#xff0c;调制技术是…

MySQL 创建数据表

创建MySQL数据表需要以下信息&#xff1a; 表名表字段名定义每个表字段 语法 以下为创建MySQL数据表的SQL通用语法&#xff1a; CREATE TABLE table_name (column_name column_type); 以下例子中我们将在 W3CSCHOOL 数据库中创建数据表w3cschool_tbl&#xff1a; CREAT…

win11 之下载安装 allure

1. 下载 https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/2.25.0/allure-commandline-2.25.0.zip 2. 配置系统变量 path 下添加解压后的bin目录 3. 验证是否安装成功 输入 allure

malloc和new的本质区别

目录 一、结论 二、示例 1.实现类T 2.用malloc分配类T的内存空间 3.用new分配类T的内存空间 一、结论 malloc 和 new 都是用于在运行时动态分配内存的机制。但它们之间存在一些本质的区别&#xff0c;主要是在使用方面&#xff0c;现在我们直接说结论&#xff0c;然后在通过…

docker拉取镜像的时候超时

问题描述&#xff1a; 有时候我们在使用docker拉取镜像的时候会遇到超时的情况迟迟拉取不下来&#xff0c;如下面 这时候我们需要设置成国内源&#xff1b; 操作步骤&#xff1a; 首先&#xff1a;创建docker目录 sudo mkdir -p /etc/docker其次&#xff1a;创建daemon文件…

MacOS - command not found: brew

问题描述 command not found: brew 原因分析 没有安装 Homebrew&#xff0c;安装后即可使用~ 解决方案 打开终端&#xff0c;输入&#xff1a;/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"&#xff0c;点击回车 在弹出…

[C#]winform基于opencvsharp实现黑白图像上色

【算法简介】 技术有时会提高艺术&#xff0c;但有时也会破坏艺术。着色黑白电影是一个可以追溯到1902年的古老想法。几十年来&#xff0c;许多电影创作者反对将黑白电影着色的想法&#xff0c;并将其视为对艺术的破坏。但今天它被接受为艺术形式的增强。该技术本身已经从艰苦…

2024最新IDEA插件开发+发布全流程 SelectCamelWords[选中驼峰单词](idea源代码)

2024最新IDEA插件开发&#xff08;发布&#xff09;-SelectCamelWords[选中驼峰单词]&#xff08;idea源代码&#xff09; 参考文档 Jetbrains Idea插件开发文档: https://plugins.jetbrains.com/docs/intellij/welcome.html代码地址&#xff1a;https://github.com/yangfeng…

超大场景的三维模型(3D)轻量化的主要技术方法

超大场景的三维模型&#xff08;3D&#xff09;轻量化的主要技术方法 超大场景的三维模型在虚拟现实、游戏开发和可视化应用等领域具有重要的价值和应用前景。然而&#xff0c;由于其庞大的数据量和复杂的几何结构&#xff0c;给数据存储、传输和渲染带来了挑战。为了提高超大场…

搭建PHP开发环境:Linux篇

目录 一、引言 二、环境准备 三、安装Web服务器&#xff08;Apache&#xff09; Ubuntu/Debian系统&#xff1a; CentOS/Red Hat系统&#xff1a; 四、安装PHP解释器 Ubuntu/Debian系统&#xff1a; CentOS/Red Hat系统&#xff1a; 五、配置Apache以支持PHP Ubuntu/…

Hive期末总结

hive的概念&#xff0c;谁开发的 Apache Hive 是一个Apache 软件基金会维护的开源项目 Facebook贡献 hive是一个基于hadoop的数据仓库工具&#xff08;对数据汇总查询和分析的工具&#xff09; hive执行原理 Hive通过给用户提供的一系列交互接口&#xff0c;接收到用户的指令…

【x264】整体框架汇总

【x264】整体框架汇总 1. x264整体框架图2. 思考 参考&#xff1a; x264源代码简单分析&#xff1a;概述 参数分析&#xff1a; 【x264】x264编码器参数配置 流程分析&#xff1a; 【x264】x264编码主流程简单分析 【x264】编码核心函数&#xff08;x264_encoder_encode&…

创建型设计模式

1.设计模式是什么&#xff1f; 设计模式是指在软件开发过程中&#xff0c;经过验证的&#xff0c;用于解决在特定环境下&#xff0c;重复出现的&#xff0c;特定问题的解决方案。 软件设计过程中&#xff0c;解决问题的固定套路。 慎用设计模式。 2.设计模式是怎么来的&…

数据库实战(一)(关系数据库设计)

&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客 &#x1f525; 系列专栏&#xff1a; &#x1f3c0;数据库 &#x1f4aa;&#x1f3fb; 十二月的寒冬阻挡不了春天的脚步&#xff0c;十二点的黑夜遮蔽不住黎明的曙光 目录 前言 练习题 题型一&#xff1a;判断关系…