目录
- 一、HTML结构
-
- 1.1 HTML标签
- 1.2 HTML文件基本结构
- 1.3 快速生成框架
- 二、HTML常见标签
-
- 2.1 注释标签 !-- –
- 2.2 标题标签 h1到h6
- 2.3 段落标签 p
- 2.4 换行标签 br
- 2.5 格式化标签
- 2.6 图片标签 img
- 2.7 超链接标签 a
- 三、表格标签
-
- 3.1 常用标签
- 3.2 合并单元格
- 四、列表标签
- 五、表单标签
-
- 5.1 表单域: form 标签
- 5.2 表单控件: input 标签
- 5.3 label 标签
- 5.4 select 标签
- 5.5 textarea 标签
- 六、无语义标签: div & span
一、HTML结构
1.1 HTML标签
HTML 代码是由 “标签” 构成的。
<body> hello world </body>
-
标签名 (body) 放到 < > 中
-
大部分标签成对出现. 为开始标签, 为结束标签.
-
少数标签只有开始标签, 称为 “单标签”.
-
开始标签和结束标签之间, 写的是标签的内容. (hello world)
-
开始标签中可能会带有 “属性”. id 属性相当于给这个标签设置了一个唯一的标识符(身份证号码).
hello
1.2 HTML文件基本结构
<html><head><title>第一个页面名字</title></head><body>hello world </body>
<html>
上述代码效果图:
代码内容简介:
标签关系:
- head 和 body 是 html 的子标签(html 就是 head 和 body 的父标签)
- title 是 head 的子标签. head 是 title 的父标签.
- head 和 body 之间是兄弟关系.
1.3 快速生成框架
在 VScode中创建文件 xxx.html , 直接输入 ! , 按 tab / enter 键, 此时能自动生成代码的主体框架。
<!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>
- 称为 DTD (文档类型定义), 描述当前的文件是一个 HTML5 的文件.
- 其中 lang 属性表示当前页面是一个 “英语页面”. 这里暂时不用管. (有些浏览器会根据此处的声明提示是否进行自动翻译).
- 描述页面的字符编码方式. 没有这一行可能会导致中文乱码.
- <meta name=“viewport” content=“width=device-width, initial-scale=1.0”>
-
- name=“viewport” 其中 viewport 指的是设备的屏幕上能用来显示我们的网页的那一块区域.
-
- content=“width=device-width, initial-scale=1.0” 在设置可视区和设备宽度等宽, 并设置初始缩放为不缩放. (这个属性对于移动端开发更重要一些).
二、HTML常见标签
2.1 注释标签 !-- –
格式如下:
<!-- 注释 -->
在编辑器中使用 Ctrl+/ 快捷键注释。
2.2 标题标签 h1到h6
数字越大,标题越小。
<h1>标题h1</h1><h2>标题h2</h2><h3>标题h3</h3><h4>标题h4</h4><h5>标题h5</h5><h6>标题h6</h6>
代码结果:
2.3 段落标签 p
在HTML中,不会自动帮你分段,粘贴一个分了段的文本,还是会一行一行写满。
分段就需要p标签:
<p> 这是一个段落</p>
<p>这是一个段落</p>
<p>这是一个段落</p>
代码结果:
可以看见上述结果并没有缩进,并且就算我们在内容中打上空格,表示缩进也不会有效果。
HTML表示空格:
-
HTML提供了几种不同的空格字符实体来表示空格,每种都有不同的宽度和特性:
-
:这是最常用的空格字符实体,代表一个不断行的空白格。它的宽度受字体影响,通常等于一个标准字符的宽度。如果需要在网页中插入多个连续的空格,可以重复使用 。
-
:这个字符实体表示一个半角的空格,宽度大约是一个标准字符的一半,不受字体影响。
-
:这个字符实体表示一个全角的空格,宽度大约是一个标准字符的宽度,也不受字体影响。
-
:这个字符实体表示一个比标准空格更窄的空格
p标签注意事项:
- p 标签之间存在一个空隙
- 当前的 p 标签描述的段落, 前面还没有缩进. (未来 CSS 会学)
- 自动根据浏览器宽度来决定排版.
- html 内容首尾处的换行, 空格均无效.
- 在 html 中文字之间输入的多个空格只相当于一个空格.
- html 中直接输入换行不会真的换行, 而是相当于一个空格.
2.4 换行标签 br
注意事项:
-
br 是一个单标签(不需要结束标签)
-
br 标签不像 p 标签那样带有一个很大的空隙.
-
是规范写法. 不建议写成这是一个
段落这是一个段落
这是一个段落
执行结果:
2.5 格式化标签
-
strong 加粗标签
-
b 加粗标签
-
em 倾斜标签
-
i 倾斜标签
-
del 删除标签
-
s 删除线标签
-
ins 下划线标签
-
u 下划线标签
strong 加粗
b 加粗
em 倾斜
i 倾斜
del 删除线
s 删除线
ins 下划线
u 下划线
执行结果:
2.6 图片标签 img
img 标签必须带有 src 属性. 表示图片的路径。
图片路径:
-
可以是网络路径:网上图片的位置。
-
也可以是绝对路径;
-
还可以是相对路径。
img 标签的其他属性
- alt: 替换文本. 当文本不能正确显示的时候, 会显示一个替换的文字。
- title: 提示文本. 鼠标放到图片上, 就会有提示。
- width/height: 控制宽度高度. 高度和宽度一般改一个就行, 另外一个会等比例缩放. 否则就会图片
失衡。 - border: 边框, 参数是宽度的像素. 但是一般使用 CSS 来设定。
2.7 超链接标签 a
-
href: 必须具备, 表示点击后会跳转到哪个页面。
-
target: 打开方式. 默认是 _self. 如果是 _blank 则用新的标签页打开。
哈希
链接形式:
-
外部链接: href 引用其他网站的地址。
百度
-
内部链接: 网站内部页面之间的链接. 写相对路径即可。
-
空链接: 使用 # 在 href 中占位。
空链接
-
下载链接: href 对应的路径是一个文件。(可以使用 zip 文件)。
-
网页元素链接: 可以给图片等任何元素添加链接(把元素放到 a 标签中)。
-
锚点链接: 可以快速定位到页面中的某个位置。
三、表格标签
3.1 常用标签
- table 标签: 表示整个表格
- tr: 表示表格的一行
- td: 表示一个单元格
- th: 表示表头单元格. 会居中加粗
- thead: 表格的头部区域(注意和 th 区分, 范围是比 th 要大的)
- tbody: 表格得到主体区域.
表格标签有一些属性, 可以用于设置大小边框等. 但是一般使用 CSS 方式来设置.
这些属性都要放到 table 标签中。
- align 是表格相对于周围元素的对齐方式. align=“center” (不是内部元素的对齐方式)
- border 表示边框. 1 表示有边框(数字越大, 边框越粗), “” 表示没边框.
- cellpadding: 内容距离边框的距离, 默认 1 像素
- cellspacing: 单元格之间的距离. 默认为 2 像素
- width / height: 设置尺寸
设计如下表格:
<table align="center" border="1" cellpadding="20" cellspacing="0"width="500" height="500"><tr><td>姓名</td><td>性别</td><td>年龄</td></tr><tr><td>张三</td><td>男</td><td>10</td></tr><tr><td>李四</td><td>女</td><td>11</td></tr>
</table>
执行结果:
3.2 合并单元格
- 跨行合并: rowspan=“n”
- 跨列合并: colspan=“n”
步骤
- 先确定跨行还是跨列
- 找好目标单元格(跨列合并, 左侧是目标单元格; 跨行合并, 上方是目标单元格)
- 删除的多余的单元格
四、列表标签
主要使用来布局的, 整齐好看。
- 无序列表[重要] ul ,li
- 有序列表[用的不多] ol, li
- 自定义列表[重要] dl (总标签) dt (小标题) dd (围绕标题来说明) 上面有个小标题, 面有几个围绕着标题来展开的。
例子:
<h3>无序列表</h3>
<ul><li>无序</li><li>无序</li><li>无序</li>
</ul>
<h3>有序列表</h3>
<ol><li>有序</li><li>有序</li><li>有序</li>
</ol>
<h3>自定义列表</h3>
<dl><dt>自定义</dt><dd>自定义</dd><dd>自定义</dd><dd>自定义</dd>
</dl>
结果:
五、表单标签
表单分成两个部分:
- 表单域: 包含表单元素的区域. 重点是 form 标签。
- 表单控件: 输入框, 提交按钮等. 重点是 input 标签。
5.1 表单域: form 标签
<form action="test.html">... [form 的内容]
</form>
5.2 表单控件: input 标签
各种控件:
- type(必须有), 取值种类很多多, button, checkbox, text, file, image, password,radio 等.
- name: 给 input 起了个名字. 尤其是对于 单选按钮, 具有相同的 name 才能多选一.
- value: input 中的默认值.
- checked: 默认被选中. (用于单选按钮和多选按钮)
- maxlength: 设定最大长度.
-
文本框
<input type="text">
-
密码框
<input type="password">
-
单选框:单选框之间必须具备相同的 name 属性, 才能实现 多选一 效果.
<input type="radio" name="sex">
-
复选框
<input type="checkbox">
-
普通按钮
<input type="button" value="我是个按钮">
-
提交按钮:提交按钮必须放到 form 标签内. 点击后就会尝试给服务器发送。
-
清空按钮:清空按钮必须放在 form 中. 点击后会将 form 内所有的用户输入内容重置。
5.3 label 标签
搭配 input 使用. 点击 label 也能选中对应的单选/复选框, 能够提升用户体验。
for 属性: 指定当前 label 和哪个相同 id 的 input 标签对应. (此时点击才是有用的)。
<label for="male">男</label> <input id="male" type="radio" name="sex">
5.4 select 标签
下拉菜单:
option 中定义 selected=“selected” 表示默认选中。
<select><option>北京</option><option selected="selected">上海</option>
</select>
5.5 textarea 标签
文本域中的内容, 就是默认内容, 注意, 空格也会有影响.
rows和cols也都不会直接使用,都是用css来改的 。
<textarea rows="3" cols="50"></textarea>
示例:
<form action="HTML.html">账户:<input type="text"></form><br><!--文本框 -->密码:<input type="password"><br><!--密码框-->性别:<input type="radio" name="sex" id="male1" > <label for="male1">男</label><input type="radio" name="sex" id="male2" ><label for="male2">女</label><br><!--单选框-->兴趣:<input type="checkbox" name="intrest" id = "i1"><label for="i1">唱</label><input type="checkbox" name="intrest" id = "i2"><label for="i2">跳</label><input type="checkbox" name="intrest" id = "i3"><label for="i3">rap</label><input type="checkbox" name="intrest" id = "i4"><label for="i4">篮球</label><br><!--多选框--><input type="submit" value="提交"></form>
结果:
六、无语义标签: div & span
div标签,division的缩写,含义是分割。
span标签,含义是跨度。
就是相当于两个盒子。用于网页布局:
- div是独占一行的,是一个大盒子.
- span不独占一行,是一个小盒子