【HTML】常用标签语义及用法、VSCode开发常用插件

该系列文章记录博主学习前端入门课程的笔记,同时也为了方便查阅,有任何问题都可以在评论区提问。本文主要介绍HTML基础知识

1.思维导图

2.VSCode 插件

2.1插件

为了操作方便,在使用VSCode编写HTML文档之前需要下载几个插件

插件

作用

Chinese (Simplified) (简体中文) Language Pack

将VSCode汉化,方便查看功能

open In Browser

Alt+B即可在浏览器预览网页效果(修改代码后需要刷新网页才能看到效果)

Auto Rename Tag

自动重命名配对的标签

live server

Alt+L+O即可在浏览器预览网页效果(实时刷新)

3.HTML标签

3.1基本结构(骨架)标签

<html> 根目录
    <head> 头部标签
        <title></title> 网页标题
    </head>
    <body> 主体
    </body>
</html>

注:HTML注释不能直接写,需要使用注释符,这里是为了方便展示

  1. 骨架标签是每个HTML文档中必然存在的

  1. 所有标签都在<>中,通常是成双出现的,第一个是开始标签,第二个是结束标签。如<html></html>

  1. 有些特殊的单标签。如<br/>

3.2特殊标签

在VSCode输入! + tab键即可自动生成HTML骨架

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

这里比骨架标签多出了一些部分,从上往下对这些标签的作用进行解释

3.2.1文档类型声明标签

作用:告诉浏览器使用哪种HTML版本显示网页

<!DOCTYPE html>

这句代码的意思:让浏览器用最新版本的HTML5显示网页。

注:

  • <!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前

  • <!DOCTYPE> 不是HTML标签,不属于HTML的一部分

3.2.2lang语言种类

作用:定义当前文档显示的语言,如en:英语,zh-CN:中文

<html lang="en">

定义为en就是英文网页,定义为zh-CN就是中文网页。其实,对于文档显示来说,定义为en的文档也可以显示中文,定义为zh-CN的也可以显示英文。但是这个属性对浏览器和搜索引擎还是有作用的(例如翻译等),所以还是尽量定义为zh-CN

3.2.3字符集(character set)

作用:多个字符的集合。方便计算机识别和存储各种文字

常用值:GB2312(简体),BIG5(繁体),GBK(简体+繁体),UTF-8(被称为万国码,基本包含了所有国家文字显示所用的字符)

<meta charset="UTF-8">

3.2.4 移动端开发用的标签*

以下标签为移动端开发内容,暂时不做讲解

<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

3.3常用标签(一)

3.3.1标签语义

含义:解释标签的含义、作用

作用:根据语义确定需要的标签,让页面结构更清晰

3.3.2标题标签<h1>-<h6>

语义:作为标题使用,并且依据重要性递减

特点:

  • 一个标题独占一行

  • 标题的文字会加粗,字号也变大

为阅读方便,如无需要,以后的代码都不包括骨架标签

<h1>标题共有六级选,</h1>
<h2>文字加粗一行选。</h2>
<h3>由大到小依次减,</h3>
<h4>从重到轻随之变。</h4>
<h5>语法规范书写后,</h5>
<h6>具体效果刷新见。</h6>
                --pink老师

效果图

3.3.3段落标签和换行标签

标签

段落<p>

换行<br/>

语义

把HTML文档划分为不同段落

强制换行

特点

  • 会根据浏览器大小进行换行

  • 段落之间有空隙

  • 单标签

  • 只是简单的开始新的一行,与段落不同

<h1>水花61分伊戈达拉制胜抢断 西决勇土再胜开拓者总分2-0</h1>
<h4>数据统计:水花兄弟合砍61分</h4>
<p>库里22投11中,三分14投4中,罚球11罚全中得到37分8篮板8助攻,职业生涯季后赛得分30+次数来到35次,超过哈登排名现役第3位,仅次于詹姆斯和社兰特。汤普森22投8中,三分8投4中得到24分3篮板2助攻,德拉蒙德-格林得到16分10篮板7助攻5盖帽,凯文-鲁尼得到14分7篮板2助攻,今天勇士有7名皆补出场。</p>
<h4>兄弟对决升级:小库里给哥哥造成压力</h4>
<p>库里兄弟是NBA历史上第一对在分区决赛相遇的兄弟。在西决第1场中,小库里没有给哥哥造成压力。他出场19分钟,7投1中只得到3分3篮板2助攻,在场期间输掉10分。但在西决第2场中,小库里攻防两端都打出杰出的表现,全场送出4次抢断,包括直接抢断自己的哥哥库里,在防守端给库里造成了极大的困扰。</p>
<p>作者: pink老师<br/>
    2019-8-8</p>

效果图

3.3.4文本格式化标签

语义:突出重要性,比普通文字更重要

语义

标签

说明

加粗

<strong> / <b>

更推荐使用<strong>,语义更强烈

倾斜

<em> / <i>

更推荐使用<em>,语义更强烈

删除线

<del> / <s>

更推荐使用<del>,语义更强烈

下划线

<ins> / <u>

更推荐使用<ins>,语义更强烈

3.3.5<div>和<span>标签

语义:没有语义,相当于一个盒子,用来装内容,布局网页。

特点

  • <div>用于布局,一行只能放一个<div>。大盒子

  • <span>用于布局,一行可以放多个<span>。小盒子

<div>我是一个div标签我一个独占一行</div>
<div>我是一个div标签我一个独占一行</div>
<div>我是一个div标签我一个独占一行</div>
<span>百度</span>
<span>新浪</span>
<span>搜狐</span>

效果图

3.3.6图像标签

作用:显示图片

<img src="img.jpg" alt="这是pink老师" title="这是pink老师的图片"/>

属性

说明

src

图片路径

必须属性

alt

文本

替换文本(当图片不能显示时显示的文字)

title

提示文本(鼠标放在图片上显示的文本)

width

像素

宽度

height

高度

border

边框粗细

总结:

  • 属性必须在标签名后面

  • 属性的先后顺序不影响功能,但是属性之间、标签名与属性之前要用空格分开

  • 属性采取键值对的形式,即key="value"的格式

3.3.7路径(补充知识)

  1. 目录文件夹:普通的文件夹,只不过存放了做网页所需的素材,如HTML、图片等等。示例:如图“案例”文件夹就是一个目录文件夹

  1. 根目录:目录文件夹的第一层

  1. 路径

  • 相对路径:指由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系。有以下三种分类

分类

符号

说明

同一级

文件位于HTML文档同一级,如<img src=baidu.gif>

下一级

/

文件位于HTML文档下一级,如<img src=/baidu.gif>

上一级

../

文件位于HTML文档上一级,如<img src=../baidu.gif>

  • 绝对路径:根目录下的绝对位置,通常是以盘符开始的如:"D:\web\img\logo.gif"(注:绝对路径和相对路径使用的斜杠不同),或者完整的网页地址"http://www.baidu.com"

3.3.8超链接标签<a>

语义:用于定义超链接

作用:从一个页面链接到另一个页面

属性

作用

href

链接

必须属性

target

_self:在当前窗口打开链接(默认)

_blank:在新窗口打开链接

设置链接打开方式

链接分类有六种,如下:

<h4>外部链接</h4> 指向外部的链接
<a href="http://qq.com" target="_blank">腾讯</a>

<h4>内部链接</h4> 指向网站内部的链接
<a href="10.demo.html">demo</a>

<h4>空链接</h4> 不指向任何网页,在网站未完善时暂时使用
<a href="#">空链接</a>

<h4>下载链接</h4> 当链接是一个文件时,点击后会自动下载
<a href="images.zip">图片压缩包</a>

<h4>网页元素链接</h4> 网页元素如文本、图像、表格、音/视频等都可以添加超链接
<a href="https://baike.baidu.com/link?url=IouDYMAUSr2HiIgn7HrNAyCeyP4nLE1TFrOSc5xhKA8sa2Pdk1c7BgLIC6sry4CVl0EVpNi5N55fVwqHdmdF1vnOnZVFmTivJum2SiPhr4u"><img src="img.jpg"></a>

第六种超链接标签是锚点标签,它的使用方法比较特殊。

作用:快速定位到网页的某个位置,例如左栏目录起到的效果

写法如下:

<a href="#slogan">slogan</a> herf值设置为"#+名称"的格式,点击后
<h3 id="slogan">从善如登,虽难可达昆仑</h3> 即可跳转到页面内id为相同名称的位置,通常用于目录

<a href="#">任意字符</a> 跳转到顶部

3.3.9注释

写法:以"<!--"开始,"-->"结束

作用:便于程序员阅读和理解代码,且程序不执行注释内容

<!-- 这是一个注释标签 -->

效果图:

发现网页不显示任何内容

3.3.10特殊字符

作用:在HTML中,一些特殊的符号很难或者不方便直接使用,此时就可以使用特殊字符来代替

重点记住:空格、大于号、小于号这三个,其他的很少使用,如需使用查阅即可

空&nbsp;格
&lt;p&gt;是段落标签

效果图

3.3.11练习

素材可以在视频评论区置顶下载,注意不用下载视频

3.4常用标签(二)

3.4.1表格标签

作用:用于展示数据,可以将繁杂的数据表现规整,可读性好。

  • 基础语法
<table> 定义表格
    <thead> 和<tbody>都为表格标签结构,可以帮助程序员更好地分清表格结构
        <tr> 定义行
            <th></th> 定义表头部分
            <th></th>
            <th></th>
        </tr>
    </thead>

    <tbody> 表格标签结构
        <tr> 
            <td></td> 定义单元格
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
  • <table>:用于定义表格

  • <tr>:定义表格中的行,必须嵌套在<table>中

  • <td>:定义表格中的单元格,必须嵌套在<tr>中

  • <th>:定义表格中的表头部分,会加粗居中显示,常用于表格第一行,以突出重要性

  • <thead>和<tbody>:表格结构标签,帮助程序员更好地分清表格结构

  • 表格属性

作用:设置表格的格式。实际开发中并不常用,基本是通过CSS来实现

属性名

属性值

描述

align

left、center、right

规定表格相对周围元素的对齐方式

border

"1"或""

规定表格单元是否拥有边框。默认为"0",即没有边框

cellpadding

像素值

规定单元格边沿与其内容之间的空白,默认为1

cellspacing

像素值

规定单元格之间的空白,默认为2

width

像素值或百分比

规定表格的宽度

height

像素值或百分比

规定表格的高度

  • 合并单元格
  1. 跨行合并:rowspan="合并单元格的个数"

目标单元格为最上侧单元格,写合并代码

  1. 跨列合并:colspan="合并单元格的个数"

目标单元格为最左侧单元格,写合并代码

示例

    <table border="1" cellspacing="0" width="500" height="249">
        <tr>
            <td></td>
            <td colspan="2"></td>
            
        </tr>
        <tr>
            <td rowspan="2"></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            
            <td></td>
            <td></td>
        </tr>
    </table>

效果图

  1. 总结:

  • 先确定合并单元格方式

  • 找到目标单元格写合并代码

  • 删除多余单元格

3.4.2列表标签

作用:布局网页

根据使用场景,可以分为无序列表、有序列表、自定义列表

  • 无序列表

语法格式

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

tips:

  1. 无序列表中的列表项没有顺序级别之分,是并列的

  1. <ul>中只能嵌套<li>,直接在<ul>中输入其他标签或文字的做法是不被允许的

  1. <li>可以容纳所有元素

  1. 无序列表会带有默认的样式属性,在实际开发中,可以通过CSS更改

  • 有序列表

语法格式

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

tips:

  1. 有序列表的列表项会按照一定的顺序排列定义

  1. <ol>中只能嵌套<li>,直接在<ul>中输入其他标签或文字的做法是不被允许的

  1. <li>可以容纳所有元素

  1. 无序列表会带有默认的样式属性,在实际开发中,可以通过CSS更改

  • 自定义列表

通常用于对术语/名词进行解释或者描述

语法格式:

<dl>    
    <dt>名词</dt>
    <dd>名词解释1</dd>
    <dd>名词解释2</dd>
</dl>

tips:

  1. <dl>里只能包含<dd>和<dt>

  1. <dl>里可以包含多个<dd>和<dt>

3.4.3表单标签

由表单域、表单控件(也称表单元素)、提示信息组成,作用是收集用户信息。

  • 表单域

作用:将范围内的表单元素信息提交给服务器

    <form action="demo.php" method="POST" name="name1">
    </form>

属性名

属性值

作用

action

url地址

指定接收并处理表单数据的服务器程序的url地址

method

get/post

设置表单数据的提交方式

name

名称

指定表单的名称,以区分同一个页面中的多个表单域

  • <input>表单元素

作用:

语法格式

<form action="demo.php" method="GET" name="demo">
    <!-- text 文本框 用户可以在里面输入任何文字 -->
    用户名:<input type="text"  name="username" value="请输入用户名" maxlength="8"> <br>
    <!-- password 密码框 用户看不见输入的密码 -->
    密码:<input type="password" name="pwd"> <br>
    <!-- radio 单选按钮 可以实现单选 -->
    <!-- name 是表单元素名字 这里的单选按钮必须有相同的name 才可以实现多选一 -->
    <!-- 单选按钮和复选框可以设置checked属性,当页面打开时就会默认选择这个选项 -->
    性别:男 <input type="radio" name="sex" value="男"> 女 <input type="radio" name="sex" value="女" checked> <br>
    <!-- checkbox 复选框 可以实现多选 -->
    爱好:吃饭<input type="checkbox" name="hobby" value="吃饭"> 睡觉<input type="checkbox" name="hobby" value="睡觉"> 打豆豆<input type="checkbox" name="hobby" value="打豆豆"> <br>
    <!-- 点击了提交按钮,就可以把表单域<form>中的表单元素提交到服务器 -->
    <input type="submit" value="免费注册">
    <!-- 重置按钮可以还原表单元素的初始状态 -->
    <input type="reset" value="重新填写">
    <!-- 普通按钮 button 后期结合js使用-->
    <input type="button" value="点击发送短信"><br>
    <!-- 文件域 用于上传文件 -->
    上传头像:<input type="file">
</form>

效果图

属性名

属性值

作用

type

text

定义单行的输入字段。用户可在其中输入文本,默认宽度为20个字符

password

定义密码字段。该字段中的字符被掩码

radio

定义单选按钮

checkbox

定义复选框

submit

定义提交按钮。提交按钮会把表单数据发给服务器

reset

定义重置按钮。重置按钮会清除表单中的所有数据

button

定义可点击按钮(多数情况下,配合JavaScript使用)

file

定义输入字段和“浏览”按钮,供文件上传

image

定义图像形式的提交按钮

hidden

定义隐藏的输入字段

name

自定义

规定input元素的名词

value

自定义

规定input元素的值

checked

checked

规定input元素首次加载时应当被选中

maxlength

正整数

规定输入字段中字符的最大长度

tips:

  1. value和name是每个表单元素都有的属性,

  1. name是表单元素的名字,同组复选框要求有相同的name值

  1. checked主要用于单选按钮

  • <label>标签

作用:绑定一个表单元素,当点击<label>标签内的文本时,浏览器就会自动将光标转到对应的表单元素,以增加用户体验

语法格式

<label for="username">用户名:</label><input type="text" id="username">
  • <select>下拉表单标签

如果有多个选项供用户选择,使用<select>标签可以节省空间

<form>
籍贯:
<select>
    <option>山东</option>
    <option selected>广东</option>
    <option>北京</option>
</select>
</form> 

效果图

tips:

  1. <select>内至少有两个<option>

  1. 在<option>内定义selected属性,该项会变为默认选项

  • <textarea>文本域表单元素

定义多行文本输入的控件,适用于用户输入内容较多的场景

<textarea>文本内容</textarea>

属性

属性值

作用

cols

字符数

定义文本域每行的字符数

rows

字符数

定义文本域中每列的字符数

注:实际开发中并不使用,选择CSS会是更好的选择

  • 练习

根据所学内容做出以下网页

做出来之后或者没有思路的话可以看看pink老师的讲解

  • 10
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
可以,以下是一个简单的示例代码,可以打印出两千常用汉字及其语义和笔画: ```java import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.HashMap; import java.util.Map; public class ChineseCharacter { public static void main(String[] args) throws IOException { String fileName = "chinese_characters.txt"; // 存放两千常用汉字的文件路径 Map<String, String[]> characterMap = new HashMap<>(); // 存放汉字及其语义和笔画的Map BufferedReader br = new BufferedReader(new FileReader(fileName)); String line; while ((line = br.readLine()) != null) { String[] arr = line.split("\t"); if (arr.length == 3) { String[] value = new String[2]; value[0] = arr[1]; // 语义 value[1] = arr[2]; // 笔画 characterMap.put(arr[0], value); } } br.close(); System.out.println("汉字\t语义\t笔画"); for (Map.Entry<String, String[]> entry : characterMap.entrySet()) { StringBuilder sb = new StringBuilder(); sb.append(entry.getKey()).append("\t"); String[] value = entry.getValue(); sb.append(value[0]).append("\t"); sb.append(value[1]); System.out.println(sb.toString()); } } } ``` 以上代码中,需要先准备一个文件,文件中每行存放一个汉字及其语义和笔画,用制表符`\t`分隔。示例文件内容如下: ``` 一 one 1 乙 second; 2nd heavenly stem 1 二 two 2 十 ten 2 丁 nail; small cube-shaped object; pellet, grain; cubic meter; fourth of 10 Heavenly Stems; surname Ding 2 厂 cliff; factory, workshop; depot; yard, courtyard; surname Chang 2 七 seven 2 卜 divine; prophesy; observe 2 ``` 执行以上代码后,将会打印出两千常用汉字及其语义和笔画,示例输出如下: ``` 汉字 语义 笔画 佚 lose; forget; miss; enjoy; at ease 7 充 fulfill; fill; supply; satisfy; plug; be full; be used up; be sufficient 6 亘 extend; cover; range over 8 仆 fall forward; lie prostrate; servant; pawn; fall forward; lie prostrate; servant; pawn 5 炎 flame; blaze; inflammation; surname Yan 8 井 well; neat; orderly 4 ``` 需要注意的是,以上代码只是一个简单的示例,实际中需要更加完善的数据集来包含所有的汉字及其语义和笔画。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

君和-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值