Web 前端基础:HTML 核心语法和常用标签

HTML部分

一、HTML简介

HTML是什么?

HTML 指的是 超文本标记语言 : HyperText Markup Language

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> </html> 

<!DOCTYPE html>:

  • 声明 HTML5 文档
  • 声明有助于浏览器中正确显示网页

<html lang="en">:

  • HTML 页面的根元素
  • lang="en" :表示网页语言是英语,如果想设置成中文可以写成lang="zh-CN"

<head>:

  • 存放网页配置信息,不会显示在页面上,(简单来说是给浏览器看的内容),比如后面用css写的内容里面的
  • title 之间放网页标题
  • <meta charset="UTF-8">:作用使用UTF-8(国际通用编码)防止中文乱码
  • <meta name="viewport" content="width=device-width, initial-scale=1.0">:
    • 视口设置:移动端适配必备。
    • width=device-width:宽度 = 设备屏幕宽度
    • initial-scale=1.0:默认不缩放

<body>:元素包含了可见的页面内容(简单来说就是用户可以直接看到的),比如图片、文字
</html>:关闭根标签,网页结束

二、HTML 标签语法

标签结构

  • 标签要成对出现,中间包裹内容
  • <>里面放英文字母(标签名)
  • 结束标签比开始标签多 /,如<body> </body>
  • 标签分类:双标签和单标签(相对于双标签会少很多)

双标签:成对出现,如<p></p>,段落标签
单标签:单独出现,如<br>,换行标签

*[快速生成骨架的方法(vscode)]
在HTML文件中,先按下!(英文),然后配合enter/Tab
向前缩进:Tab
向后缩进:Shift+Tab

标签嵌套关系(父子、兄弟)

父子关系(嵌套关系):子级标签换行且缩进(Tab键)

<html> <body></body> </html> 

兄弟关系(并列关系):兄弟标签要换行要对齐 —— 同级别关系

<head></head> <body></head> 

HTML 注释和调试

注释 :<!-- 这里是注释! -->
为了方便与自己后续理解代码的含义和与方便别人理解,所以根据需求写适当的注释可以提高程序的可读性

*[vscode中快速添加注释的方法]:
添加/删除注释的快捷键:ctrl+/

调试
当代码出现问题,不易看出时,可以使用调试功能
在自己使用的浏览器中 鼠标右键-> 检查 即可查看代码,或者按快捷键F12或者按Fn + F12(笔记本电脑)

三、HTML 文本排版标签

标题标签 h1~h6

标题标签特点<h+num></h+num>

  • 以<h+数字>来表示标题标签
  • 文字加粗
  • 随着数增大而减小
  • 独自占一行
  • 自动换行
注意:h1 标签在一个网页中只能用一次,其他的标题标签可以多次使用

实践样例

<!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>HawkPP进阶之路</h1> <h2>html入门 </h2> <h3>html进阶</h3> <h4>css入门</h4> <h5>css进阶</h5> <h6>前端工程师HawkPP</h6> </body> </html> 

显示效果

标题样例

段落标签 p

段落标签特点<p>这里是段落内容</p>

  • 独占一行
  • 整段段落的字体大小相同
  • 段落之间存在间隙

实践样例

<!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> <p>HawkPP is pretty much a noob.</p> </body> </html> 

样例显示:

段落样例显示

换行 br、水平线 h

<br:换行标签
<hr>: 水平线标签

实践样例

<!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> <p>HawkPP is pretty much a noob.</p> <p>But, hawkPP want to be a full stack Web developer!</p> <hr> <br> <hr> <p>HawkPP is pretty much a noob.</p> <p><hr>But, hawkPP want to be a full stack Web developer!</p> <hr> </body> </html> 

样例显示

换行和水平线标签样例

文本格式化标签

标签作用示例
<b>定义粗体文本(无语义)<b>粗体</b>
<strong>定义重要文本(语义强调)<strong>重要(加粗)</strong>
<i>定义斜体文本(无语义)<i>斜体</i>
<em>定义强调文本(语义强调)<em>强调(斜体)</em>
<mark>定义高亮/标记文本<mark>高亮</mark>
<small>定义小号字体文本<small>小号</small>
<del>定义删除文本(带删除线)<del>删除</del>
<ins>定义插入文本(带下划线)<ins>插入</ins>
<sub>定义下标文本H<sub>2</sub>O
<sup>定义上标文本X<sup>2</sup>
<u>定义下划线文本<u>下划线</u>
<s>定义不准确的文本(带删除线)<s>原价</s>
提示:<strong><em> 具有语义化,利于 SEO(Search Engine Optimization(搜索引擎优化)的缩写) 和屏幕阅读器<b><i> 仅表示样式,无额外语义
<s>和<del>的区别: <s>:内容"不再准确", <del>:内容"已被删除

实践样例

按表格顺序展示各标签的显示效果
<!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> <p><b>HawkPP</b> is pretty much <strong>a noob</strong>,<i>but</i> he want to be a <em>full stack developer</em>!!</p> <p><mark>HawkPP</mark> is <small>not</small> a professional yet, <del>but</del> he is <ins>working hard</ins> to become one!!!</p> <p>HawkPP want to drink H<sub>2</sub>O</p> <p>HawkPP's growth rate is 10<sup>-n</sup></p> <p><u>HawkPP</u></p> <p><s>HawkPP want to study!!</s></p> </body> </html> 

样例显示

文本标签显示样例

块级元素 div & 行内元素 span

<div>:块级 (block-level)元素,用于创建页面结构和布局,独占一行,会以块的形式占据可用空间
<span>内联元素(inline),用于对文本或行内元素进行样式化或包裹,不换行,只占据其内容的宽度

实践样例

<!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>HawkPP</div> <div>HawkPP want to study!!</div> <span>HawkPP want to study!!</span> <span>HawkPP</span> </body> </html> 

样例显示

div和span标签样例

四、HTML 图像与路径

相对路径与绝对路径

类型写法特点优点缺点常用场景
绝对路径从根 / 完整网址开始定位准确换目录就失效外部资源、静态 CDN
相对路径以当前文件为起点灵活、可移植依赖当前位置项目内部图片、页面
相对路径查找方式:
当前项目文件位置出发查找目标文件
使用文件和项目在同一个文件夹(同级文件夹) → ./
使用文件和项目在其他文件夹(子文件夹文件)→ 文件夹名/
使用文件在项目在上一级文件夹(父文件夹) → ../

实践样例

<!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> <!-- 相对路径样例 --> <!-- 文件在其他文件夹 --> <img src = "img/1.jpg"> <!-- 文件在当前文件夹 --> <img src = "./壁纸.jpeg"> <!-- 文件在上一文件夹 --> <img src = "../壁纸3.jpg"width="500px"> <!-- 绝对路径样例 --> <img src = "C:\Users\33518\Desktop\壁纸2.jpg"> </body> </html> 

样例显示

相对路径和绝对路径样例

图像标签 img

图片标签结构<img src="url" alt="some_text" title = "text">

  • src = "url":src 指 “source”,源属性的值是图像的 URL 地址,是必须属性。
  • alt ="":替代文本(图片加载失败时显示)
  • widthheight:width(宽度) 与 height(高度)属性用于设置图像的宽度与高度
  • title:提示文本,鼠标悬停时显示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> <body> <img src = "img/1.jpg" alt = "photo1"height = "400" title = "photo1"> <img src = "./壁纸.jpeg" alt = "photo2"> <img src = "../壁纸3.jpg" alt="photo3"width = "500"> </body> </html> 

样例显示

图片标签样例

五、HTML 超链接

超链接结构<a href="URL">链接文本</a>

  • <a> 标签:定义了一个超链接(anchor)。它是 HTML 中用来创建可点击链接的主要标签。
  • href 属性:指定目标 URL,当点击链接时,浏览器将导航到此 URL
  • target属性:
    • _blank: 在新窗口或新标签页中打开链接
    • _self: 在当前窗口或标签页中打开链接(默认)
    • _parent: 在父框架中打开链接
    • _top: 在整个窗口中打开链接,取消任何框架
  • rel:定义链接与目标页面的关系,nofollow: 表示搜索引擎不应跟踪该链接,常用于外部链接,noopenernoreferrer: 防止在新标签中打开链接时的安全问题
注意:当使用 target="_blank" 时,新页面可以通过 window.opener 访问原页面,存在安全风险,所以使用targe= "_blank"时,应该添加rel = "noopener noreferrer"

实践样例

<!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> <a href="https://editor.ZEEKLOG.net/md?articleId=159436052&spm=1011.2415.3001.9698" target="_blank" rel = "noopener noreferrer">HawkPP的第一篇博客</a> </body> </html> 

样例效果

超链接样例

六、HTML 列表

无序列表 ul li

无序列表:ul 嵌套 liul 是无序列表,li 是列表条目,用于布局排列整齐的不需要规定顺序的区域,显示效果为粗体圆点(典型的小黑圆圈)
结构:

<ul> <li> </li> <li></li> </ul> 

实践样例

<!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> <ul> <li>HawkPP</li> <li>HawkPlusPlus</li> </ul> </body> </html> 

样例显示

无序列表样例

有序列表 ol li

有序列表ol 嵌套 liol 是有序列表,li 是列表条目,布局排列整齐的需要规定顺序的区域,列表项目使用数字进行标记

结构

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

实践样例

<!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> <ol> <li>HawkPP</li> <li>HawkPlusPlus</li> </ol> </body> </html> 

样例效果

有序列表

定义列表 dl dt dd

定义列表dl 嵌套 dtdddl 是定义列表,dt 是定义列表的标题,dd 是定义列表的描述 / 详情
结构:

<dl> <dt>列表标题</dt> <dd>列表描述 / 详情</dd> </dl> 

实践样例

<!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> <dl> <dt>HawkPP</dt> <dd>HawkPP want to be a full stack developer!!!!</dd> <dt>HawkPlusPlus</dt> <dd>HawkPP is growing!!</dd> </dl> </body> </html> 

样例效果

无序列表样例

七、HTML 表格

表格基本结构

标签名称描述示例代码
<table>表格容器定义整个表格<table>...</table>
<tr>表格行定义表格中的一行<tr>...</tr>
<td>表格单元格定义普通单元格<td>内容</td>
<th>表头单元格定义标题单元格(加粗居中)<th>标题</th>
为方便记忆对应标签功能(提供下面对应标签的英文)
trtr 是 table row 的缩写,表示表格的一行。
tdtd 是 table data 的缩写,表示表格的数据单元格。
thth 是 table header的缩写,表示表格的表头单元格。

表头、表体、表尾

标签名称作用示例
<thead>表头组包裹表头行,语义化分组<thead><tr><th>姓名</th></tr></thead>
<tbody>表体组包裹表格主体内容<tbody><tr><td>HawkPP</td></tr></tbody>
<tfoot>表尾组包裹表格汇总或底部内容<tfoot><tr><td>rating:-1000</td></tr></tfoot>

结构

<table> <thead> <tr> <th>列标题1</th> <th>列标题2</th> <th>列标题3</th> </tr> </thead> <tbody> <tr> <td>行1,列1</td> <td>行1,列2</td> <td>行1,列3</td> </tr> <tr> <td>行2,列1</td> <td>行2,列2</td> <td>行2,列3</td> </tr> </tbody> <tfoot> <tr> <td>最后一行,列1</td> <td>最后一行,列2</td> <td>最后一行,列3</td> </tr> </tfoot> </table> 

实践样例

<!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> <thead> <tr> <th>比赛次数</th> <th>参赛人员</th> <th>比赛成绩</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>HawkPP</td> <td>59</td> </tr> <tr> <td>2</td> <td>HawkPP</td> <td>49</td> </tr> </tbody> <tfooter> <tr> <td>比赛总次数:2</td> <td>参赛人:HawkPP</td> <td>平均得分:54</td> </tr> </tfooter> </table> </body> </html> 

样例效果

表格样例1
注意:
如果不定义边框属性,表格将不显示边框,如果要显示边框,在table标签里面添加边框属性border

添加边框属性后显示效果:

表格样例2

合并单元格(colspanrowspan

属性名称作用示例
colspan跨列合并横向合并 n 列<td colspan="2">合并2列</td>
rowspan跨行合并纵向合并 n 行<td rowspan="3">合并3行</td>
合并规则:colspan="n":当前单元格向右占用 n 列,被合并的单元格需删除rowspan="n":当前单元格向下占用 n 行,被合并的单元格需删除但是,不能跨表格结构标签合并单元格(theadtbodytfoot)。
合并单元格的步骤:明确合并的目标保留最左最上的单元格,添加属性n(取值是数字,表示需要合并的单元格数量)跨行合并,保留最上单元格,添加属性 rowspan跨列合并,保留最左单元格,添加属性 colspan删除其他单元格

实践样例

<!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> <thead> <tr> <th>比赛次数</th> <th>参赛人员</th> <th>比赛成绩</th> </tr> </thead> <tbody> <tr> <td>1</td> <!-- 合并行 --> <td rowspan="2">HawkPP</td> <td>59</td> </tr> <tr> <td>2</td> <!-- 删除重合的表格元素 --> <!-- <td>HawkPP</td> --> <td>49</td> </tr> </tbody> <tfoot> <tr> <td>参赛人对自己的评价</td> <!-- 合并列 --> <td colspan="2">HawkPP is a noob at this!!!</td> <!-- 删除重合的表格元素 --> <!-- <td>平均得分:54</td> --> </tr> </tfoot> </table> </body> </html> 

样例效果

表格样例3

八、HTML 表单

表单是什么?

用于收集用户的输入信息
通过标签<form>来创建标签

input 标签的各种类型

基本结构<input type="..." >
根据标签 type 属性值不同,来实现不同的功能,如:文本输入框、密码框、单选按钮、复选框等

常用顺序排序整理如下:

排序type 值说明
1text单行文本输入框
2password密码输入框,输入内容显示为圆点或星号
3submit提交按钮
4checkbox复选框(多选框)
5radio单选框
6button普通按钮
7file文件上传控件
8email邮箱输入框,提交时自动校验邮箱格式
9number数字输入框,可配合 min/max/step 使用
10tel电话号码输入框,移动端调出数字键盘
11hidden隐藏字段,不显示但会提交数据
12date日期选择器
13reset重置按钮,清空表单内容
14url网址输入框,需包含 http:// 或 https://
15search搜索框,带有清除按钮样式
16range滑块控件,用于范围选择
17color颜色选择器,返回十六进制色值
18image图像提交按钮
19time时间选择器
20datetime-local本地日期时间选择器
21month月份选择器
22week周选择器

单选框、多选框

属性名作用单选框(radio)补充说明多选框(checkbox)补充说明
name控件分组名称同组 name 必须相同,实现互斥单选,只能选中一个同组 name 必须相同,代表同一组选项,支持多选
value控件提交取值必须设置,同组内 value 不可重复,用于提交实际数据必须设置,同组内 value 不可重复,用于提交实际数据
checked默认选中状态同组内最多只能有一个 checked,保证默认单选同组内可以有多个 checked,支持默认多选

单选框

结构<input type="radio">

多选框

结构<input type="checkbox">

实践样例

<!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> <h1>Welcome to HawkPP's Website!!!</h1> <!-- 单选框 --> <!-- 按性别分类,即用name自定义分组,分为男、女、保密用value组内元素有哪些 --> <input type="radio" name = "gender" value = "male">男 <input type="radio" name = "gender" value="female">女 <!-- checked设置默认选中 --> <input type="radio" name = "gender" value="secret" checked>保密 <br><br> <strong>Please to guess HawkPP's hobby!!!!</strong><br> <!-- 多选框 --> <input type="checkbox" name = "hobby" value="coding">编程 <input type="checkbox" name = "hobby" value="running">跑步 <input type="checkbox" name = "hobby" value="other"> </form> </body> </html> 

样例效果

单选框和多选框样例

下拉菜单 select

下拉菜单:select 嵌套 option,select 是下拉菜单整体,option是下拉菜单的每一项
结构如下

<select> <option></option> <option></option> <option selected> </option> </select> 
name 用于后端,表单提交时,后端通过 name 获取选中的值,必须设置才能正确提交数据
id 用于前端 JS 操作、CSS 样式、label 关联都需要使用 id

实践样例

<!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> <ins>Please to guess where HawkPP comes from!!!</ins> <br> <select name="county"> <option value="China">China</option> <option value="USA">USA</option> <option value="UK">UK</option> <option value="Extraterrestria">Extraterrestria</option> </select> </form> </body> </html> 

样例效果

下拉菜单样例

文本框和文本域 textarea

文本框:<input type="text">
文本域:多行输入文本的表单控件,<textarea>默认提示文字</textarea>

样例实践

<!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> <h1>Welcome to HawkPP's Website!!!</h1> <strong>Please to register an account!!</strong> <br> <!-- 文本框 --> id:<input type = "text" name="id"><br> password:<input type = "password" name="password"> <br> <u>What do you think of the HawkPP website?</u> <br> <!-- 文本域 --> <textarea>Write your comment!!</textarea> <br> </form> </body> </html> 

样例效果

文本框和文本域样例

label 标签与按钮

label标签

作用:用于为表单元素定义标注(标签),关联表单控键

写法

  1. 包裹法(隐式关联):<label> <input></label>
    把表单控件放在 <label> 标签里面,点击文字就能聚焦到输入框
  2. for属性法(显式关联):<input> <label for="XX"> </label>
    用 for 属性指向控件的 id,标签和控件可以分开写。

样例实践

<!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> <!-- 隐式 --> <label><input type="checkbox">我已阅读并同意《用户协议》 </label> <br> <!-- 显式 --> <input type = "checkbox"> <label for="safe">我已阅读并同意《用户协议》</label> <br> </form> </body> </html> 

样例效果

label样例
通过实操发现有label和无label的区别如下:
使用 label 标签增大点击范围的表单控件,如文本框,点击文字可以直接调整选择与否,其他的表单控件如密码框、上传文件、单选框、多选框、下拉菜单、文本域这些也有类似的效果

按钮

结构:<button>按钮</button>

type 值作用使用场景
submit默认值,点击后提交表单表单提交按钮
reset重置表单内所有输入框为初始值清空表单
button普通按钮,无默认行为配合 JavaScript 执行自定义操作

样例实践

<!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> <h1>Welcome to HawkPP's Website!!!</h1> <strong>Please to register an account!!</strong> <br> <!-- 文本框 --> id:<input type = "text" name="id"><br> password:<input type = "password" name="password"> <br> <button type="submit">提交</button> <button type="reset">重置</button> <br> </form> </body> </html> 

样例效果

按钮样例

综合HTML实践

题目描述

结合上述这篇博客内容,从零开发一个纯HTML个人博客网站
要求不使用CSS、不使用JS,只通过HTML标签完成结构、内容、布局与交互。

任务要求

  1. 构建标准规范的HTML5页面骨架,包含完整头部配置与页面结构。
  2. 使用文本排版标签搭建博客标题、段落、分割线与文本格式,让文章内容清晰易读。
  3. 插入个人头像或博客配图,正确使用相对/绝对路径与图片属性。
  4. 实现超链接跳转,可以包括外部链接、文章链接、页面内导航链接。
  5. 使用三类列表展示博客分类、文章目录、个人信息介绍。
  6. 完成一个留言表单,包含输入框、单选、多选、下拉菜单、文本域、按钮等完整功能。
  7. 使用语义化标签区分页面区域,代码规范、注释清晰、结构合理。
  8. 页面底部使用页脚区域展示版权信息。

代码如下

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>HawkPP's website</title> </head> <body> <!-- ==================== 页面容器开始 ==================== --> <!-- 最外层容器,宽度1500px,作为整个页面的父容器 --> <div> <!-- ==================== 头部区域开始 ==================== --> <!-- 页面头部,浅天蓝色背景 --> <div> <!-- 博客主标题,水平居中,移除默认下边距 --> <h1> HawkPP's first blog website</h1> </div> <!-- ==================== 头部区域结束 ==================== --> <!-- ==================== 菜单区域开始 ==================== --> <!-- 左侧导航菜单,金黄色背景,宽度200px,高度1150px,向左浮动 --> <div> <!-- 菜单标题:加粗显示 --> <strong>目录</strong><br> <!-- 锚点链接:点击跳转到博主简介区域 --> <a href="#HawkPP_profile">HawkPP的简介</a><br> <!-- 锚点链接:点击跳转到HTML基础区域 --> <a href="#HTML_basic"> HTML入门</a><br> <!-- 锚点链接:点击跳转到HTML进阶区域 --> <a href="#HTML_advanced">HTML进阶</a><br> <!-- 锚点链接:点击跳转到CSS入门区域 --> <a href="#CSS_basic">CSS入门</a><br> <!-- 锚点链接:点击跳转到CSS进阶区域 --> <a href="#CSS_advanced">CSS进阶</a><br> </div> <!-- ==================== 菜单区域结束 ==================== --> <!-- ==================== 内容区域开始 ==================== --> <!-- 主体内容区域,浅灰色背景,宽度1300px,向左浮动,高度自适应 --> <div> <!-- ==================== 博主简介区域开始 ==================== --> <!-- 博主简介标题,二级标题,作为锚点目标 --> <h2>HawkPP的简介</h2><br> <!-- 博主头像图片,宽度200px,高度200px,alt属性为HawkPP --> <img src="C:\Users\33518\Pictures\Image_1771658476254_187.jpg" alt="HawkPP"width="200"height="200px"> <!-- 个人简介文字,使用段落标签,包含换行 --> 个人简介:<p>Hi, I'm HawkPP, a CS student.I'm still learning the basics of C/C++ and Python, and I'm slowly getting into data structures and algorithms.<br>I enjoy building small projects like simple games and personal websites, though I know I have a lot to improve.<br>Thanks for stopping by my blog—I'm here to share my learning journey and grow together with others!</p> <!-- 水平分隔线,分隔博主简介和文章区域 --> <hr> <!-- ==================== 博主简介区域结束 ==================== --> <!-- ==================== 文章占位区域开始 ==================== --> <!-- HTML基础标题,作为锚点目标 --> <h2>HTML基础</h2><br><hr> <!-- HTML进阶标题,作为锚点目标 --> <h2>HTML进阶</h2><br><hr> <!-- CSS基础标题,作为锚点目标 --> <h2>CSS基础</h2><br><hr> <!-- CSS进阶标题,作为锚点目标 --> <h2>CSS进阶</h2><br><hr> <!-- ==================== 文章占位区域结束 ==================== --> <!-- ==================== 留言板表单开始 ==================== --> <form> <!-- 表单标题:留言板,水平居中,加粗 --> <h2><strong>留言板</strong></h2> <!-- 姓名输入框:使用label隐式关联,文本类型 --> <label>你的名字:<input type="text"><br></label> <!-- 邮箱输入框:使用label隐式关联,邮箱类型,带占位提示 --> <label>你的邮箱:<input type="email" placeholder="请输入邮箱"></label><br> <br> <!-- 留言内容:label显式关联文本域,设置字体大小和垂直对齐 --> <label for="commence">留言内容:</label> <!-- 文本域:宽度50列,高度5行,带占位提示,垂直对齐和内边距 --> <textarea cols="50" rows ="5"style ="vertical-align:middle; padding: 5px;" placeholder="请输入留言内容"></textarea> <br> <!-- 评价单选框组:三个选项,name相同实现单选 --> 评价: <label><input type="radio" name="chance">中评</label> <label><input type="radio" name="chance">好评</label> <label><input type="radio" name="chance">好好评</label> <br> <!-- 留言类型下拉菜单:label显式关联select --> <label for="kinds">留言类型选择:</label> <select name="kinds"> <option>QQ</option> <option>email</option> <option>WeChat</option> </select> <br> <!-- 表单按钮:提交按钮和重置按钮 --> <button type="submit">提交留言</button> <button type="reset">重置留言</button> </form> <!-- ==================== 留言板表单结束 ==================== --> </div> <!-- ==================== 内容区域结束 ==================== --> <!-- ==================== 底部区域开始 ==================== --> <!-- 页面底部,橙色背景,清除浮动,文字居中 --> <div> <!-- 版权信息,包含作者超链接 --> 版权归<a href="https://blog.ZEEKLOG.net/2503_94115885?type=blog"><strong>HawkPP</strong></a>所有 </div> <!-- ==================== 底部区域结束 ==================== --> </div> <!-- ==================== 页面容器结束 ==================== --> </body> </html> 

显示效果

综合案例11


综合案例12

文末说明

参考资料

本文学习与编写过程中参考了以下教程:

版权声明

  • 本文作者:HawkPP
  • 发布平台:ZEEKLOG
  • 转载请注明出处,本文仅供学习交流使用

联系与反馈

如有疏漏或错误,欢迎各位大佬指正,我会及时修改完善!
感谢你的阅读与交流!

Read more

如何在 Visual Studio Code 中使用 Cursor AI

如何在 Visual Studio Code 中使用 Cursor AI

在当今快节奏的开发环境中,像 Cursor AI 这样的 AI 工具正在彻底改变开发人员编写和管理代码的方式。Cursor AI 通过提供智能代码建议、自然语言编辑和多文件项目更新功能,增强了“ Visual Studio Code (VS Code )”的功能,所有这些功能均由 GPT-4 和 Claude 3.5 Sonnet 等“顶级”模型提供支持。 这篇详细的文章探讨了如何在Visual Studio Code中使用 Cursor AI ,提供了性能基准,并包括真实世界的编码比较以说明其实际应用。 什么是 Cursor AI Cursor AI 是一个以 AI 为中心的集成开发环境 (IDE),是 Visual Studio Code 的变体。它融合了

招聘可以AI面试,那么我制作了一个AI面试教练不过分吧

招聘可以AI面试,那么我制作了一个AI面试教练不过分吧

招聘可以AI面试,那么我制作了一个AI面试教练不过分吧 1.背景 随着AI的发展,面试出现了AI面试,毕设出现了AI查重率,我觉得AI发展的都没那么超级智能化,但是这种东西倒是先出现了,查重率是对比知网得出的结果,我认事实依据,AI查重率都不知道是依据什么,总之降AI率就是就写毕设时的问题,很难受,既然面试招聘可以AI面试,那么我制作了一个AI面试教练,提取预判AI的问题训练自己,不过分吧。 既然企业能用 AI 来筛人,那我为什么不能用 AI 来武装自己? 于是,我开发了一款 AI 面试教练系统: 通过分析目标公司与岗位的历史面经,结合我的简历,智能生成个性化面试准备报告,精准预判问题、优化表达、提升竞争力。 这个想法朴素,但务实——用 AI 对抗 AI,用技术反哺成长。 2.效果展示 功能流程图 核心功能详解 1. 智能面经抓取与分析 用户只需输入“联想 材料工程师”

【超音速专利 CN118134841A】一种光伏产品缺陷检测AI深度学习算法

【超音速专利 CN118134841A】一种光伏产品缺陷检测AI深度学习算法

申请号CN202410053849.9公开号(公开)CN118134841A申请日2024.01.12申请人(公开)超音速人工智能科技股份有限公司(833753)发明人(公开)张俊峰(总); 叶长春(总); 廖绍伟 原文摘要 本发明公开一种光伏产品缺陷检测AI深度学习算法,涉及AI算法领域。该光伏产品缺陷检测AI深度学习算法,采用深度卷积神经网络作为预训练模型,使用特征金字塔网络结构FPN对预训练模型得到的不同尺度的特征图进行融合,采用区域提议网络RPN在特征图上生成候选框,该光伏产品缺陷检测AI深度学习算法通过使用预训练模型提取图像特征,使用FPN融合多尺度特征,使用RPN提取候选框,使用ROIAlign抽取局部特征,使用分类、回归、FCN进行缺陷分类、位置回归以及掩膜信息提取,对缺陷的分类以及输出缺陷效果的准确性好,对缺陷的定位精度高,对缺陷的描述准确且全面,从而提高了在光伏产品加工中,对产品的缺陷检测效果。 术语 FCN指的是全卷积网络,是深度学习中用于图像处理任务的一种重要架构,相比于传统的卷积神经网络CNN,FCN不仅能够识别图像中的对象,还能在像素级

新一代 AI 编程工具 Google Antigravity 下载与安装指南

新一代 AI 编程工具 Google Antigravity 下载与安装指南

Google Antigravity 下载与安装指南 2025 年 11 月 18 日,Google 向开发者社区投下了一颗重磅炸弹:在发布 Gemini 3 最强大语言模型的同时,同步推出了 Antigravity——一款免费的「智能体化」开发平台。 这并不是一次临时起意的突袭。早在 2025 年 7 月,Google 就斥资 24 亿美元收购了 Windsurf 团队,CEO Varun Mohan 及核心工程人才悉数加入 Google DeepMind。Antigravity 正是这次战略布局的结晶——它不只是提供代码建议,而是能自主规划、编写、测试并验证整个应用程序。这意味着,开发者可以从繁琐的语法细节中解放出来,将精力聚焦于系统架构与核心业务逻辑。 接下来,我们将详细介绍如何在 Mac、