1.网页

1.2 什么是 HTML

HTML 指的是超文本标记语言(HyperText Markup Language),它是用来描述网页的一种语言。

HTML不是一种编程语言,而是一种标记语言(markuplanguage),标记语言是一套标记标签(markup tag)。

所谓超文本,有2 层含义
1.它可以加入图片、声音、动画、多媒体等内容(超越了文本限制)。
2.它还可以从一个文件跳转到另一个文件,与世界各地主机的文件连接(超级链接文本)。

1.3 网页的形成

网页是由网页元素组成的,这些元素是利用 html标签描述出来,然后通过浏览器解析来显示给用户的.

2.常用浏览器

1.浏览器是网页显示、运行的平台。

常用的浏览器有IE、火狐(Firefox)、谷歌(Chrome)、Safari和Opera等平时称为五大浏览器。

2.浏览器内核:

浏览器内核(渲染引擎):负责读取网页内容,整理讯息,计算网页的显示方式并显示页面。

浏览器 内核 备注
chrome/Opera Blink chrome/opera浏览器内核。Blink 其实是 WebKit 的分支

3.Web标准

Web 标准是由 W3C 组织和其他标准化组织制定的一系列标准的集合。W3C(万维网联盟)是国际最著名的标准化组织

web标准的构成

3.2 Web 标准的构成
主要包括结构(Structure)、表现(Presentation)和行为(Behavior)三个方面。

标准 说明
结构 结构用于对网页元素进行整理和分类,现阶段主要学的是HTML。
表现 表现用于设置网页元素的版式、颜色、大小等外观样式,主要指的是CSS
行为 行为是指网页模型的定义及交互的编写,现阶段主要学的是Javascript

Web 标准提出的最佳体验方案:

结构、样式、行为相分离,简单理解:结构写到 HTML 文件中,表现写到 CSS 文件中 ,行为写到JavaScript文件中

4.html标签

1.1 基本语法概述

1.HTML标签是由尖括号包围的关键词,例如 `<html>`
2.HTML标签通常是成对出现的,例始`<html>`和`</html>`,我们称为双标签。标签对中的第一个标签是开始标签,第二个标签是结束标签。
3.有些特殊的标签必须是单个标签(极少情况),例如`<br/>`我们称为单标签。

1.2 标签关系

双标签关系可以分为两类:包含关系和并列关系。

2.1 文档类型声明标签

<!DOCTYPE html>
这句代码的意思是: 当前页面采取的是 HTML5 版本来显示网页
注意:
1.<!DOCTYPE>声明位于文档中的最前面的位置,处于<html>标签之前。
2.<!DOCTYPE>不是一个HTML标签,它就是文档类型声明标签

2.2 lang 语言种类

用来定义当前文档显示的语言。
1.en定义语言为英语
2.zh-CN定义语言为中文
简单来说,定义为en 就是英文网页,定义为 zh-CN 就是中文网页

其实对于文档显示来说,定义成en的文档也可以显示中文,定义成zh-CN的文档也可以显示英文

2.3 charset编码

<meta charset="UTF-8">

3.1 html语义标签

学习标签是有技巧的,重点是记住每个标签的语义。简单理解就是指标签的含义,即这个标签是用来干嘛的

3.2 标题标签<h1>-<h6>(重要 )

为了使网页更具有语义化,我们经常会在页面中用到标题标签。HTML提供了6个等级的网页标题即<h1>-<h6>

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

特点:
1.加了标题的文字会变的加粗,字号也会依次变大
2.一个标题独占一行

3.3 段落和换行标签(重要 )

在 HTML中,一个段落中的文字会从左到右依次排列,直到浏览器窗口的右端,然后才自动换行。如果希望某段文本强制换行显示,就需要使用换行标签<br/>

3.4 文本格式化标签

在网页中,有时需要为文字设置粗体、斜体或下划线等效果,这时就需要用到HTML中的文本格式化标签,使文字以特殊的方式显示。
标签语义:突出重要性,比普通文字更重要

功能 HTML标签 Markdown语法 说明 推荐使用
加粗 <strong></strong><b></b> 加粗文本 更推荐使用<strong>标签,因为语义更强烈 <strong></strong>
倾斜 <em></em><i></i> 倾斜文本 更推荐使用<em>标签,因为语义更强烈 <em></em>
删除线 <del></del><s></s> 删除线文本 更推荐使用<del>标签,因为语义更强烈 <del></del>
下划线 <ins></ins><u></u> ++下划线文本++ (注意:Markdown本身不支持下划线,此处仅为示意) 更推荐使用<ins>标签,因为语义更强烈 <ins></ins>

3.5
容器标签

<div><span>是没有语义的,它们就是一个盒子,用来装内容的。
<div>这是头部</div>
<span>今日价格</span>
div 是 division 的缩写,表示分割、分区。span 意为跨度、跨距
特点:
1.<div>标签用来布局,但是现在一行只能放一个<div>。大盒子
2.<span>标签用来布局,一行能放多个<span>。小盒子

3.6 图像标签和路径(重点)

1.图像标签

在 HTML标签中 ,<img>标签用于定义HTML页面中的图像。

<img src="图像URL"/>
单词 imae的缩写,意为图像。

src 是<img>标签的必须属性,它用于指定图像文件的路径和文件名

4.1 图像标签和路径 (重点)

(1) 图像标签

图像标签的其他属性
属性 属性值 说明
src 图片路径 必须属性
alt 文本 替换文本。图像不能显示的文字
title 文本 提示文本。鼠标放到图像上,显示的文字
width 像素 设置图像的宽度
height 像素 设置图像的高度
border 像素 设置图像的边框粗细
图像标签属性注意点
  1. 图像标签可以拥有多个属性,必须写在标签名的后面
  2. 属性之间不分先后顺序,标签名与属性、属性与属性之间均以空格分开
  3. 属性采取键值对的格式,即key=“value”的格式,属性=“属性值

(2)路径

(a)目录文件夹和根目录:
  1. 目录文件夹:就是普通文件夹,里面只不过存放了我们做页面所需要的相关素材,比如html文件、图片等
  2. 根目录:打开目录文件夹的第一层就是根目录
(b)相对路径和绝对路径
  1. 相对路径:相对于文件做参考
  2. 绝对路径:是指目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径。

5. 超链接标签

(1).链接的语法格式

在Markdown中,创建超链接的语法格式如下:

[链接文本](链接地址 "链接标题")
如果不需要链接标题,则可以省略该部分,如下所示:

[链接文本](链接地址)
HTML中的超链接标签
虽然Markdown不支持直接插入HTML标签,但你可以了解HTML中的超链接标签的语法:

<a href="链接地址" target="_blank">链接文本</a>

在这里,href属性用于指定链接目标的URL地址,而target属性用于指定链接页面的打开方式。_blank值意味着链接将在新的浏览器窗口中打开。

示例
以下是一个Markdown格式的示例,展示了如何使用Markdown语法创建超链接:

这是一个[指向示例网站的链接](https://example.com)

你也可以选择在新窗口中打开链接,像这样:[在新窗口中打开链接](https://example.com "新窗口打开")
请注意,Markdown渲染器需要支持上述链接语法才能正确显示链接。

如果你希望在Markdown中显示HTML标签而不创建链接,你可以使用代码块,如下所示:

<a href="链接地址" target="_blank">链接文本</a>
或者,你可以使用转义字符来显示HTML标签文本,例如:  
  
\`<a href="链接地址" target="_blank">链接文本</a>\`
请记住,在Markdown文件中,上述代码块将显示为HTML标签的文本,而不是实际的超链接。

实际使用
要在Markdown文件中创建实际的超链接,请使用以下格式:

markdown
[链接文本](链接地址)
例如:

markdown
[访问GitHub](https://github.com)
以上就是在Markdown中创建和管理超链接的基本方法。

(2).链接的语法格式

文本或图像 <a> 单词 anchor[‘ænke(r)]的缩写,意为:锚。两个属性的作用如下:

属性 作用
href 用于指定链接目标的url地址,(必须属性)当为标签应用href属性时,它就具有了超链接的功能
target 用于指定链接页面的打开方式,其中self为默认值,blank为在新窗口中打开方式。
title 提示文本。鼠标放到图像上,显示的文字

(3).链接分类:

  1. 外部链接: 例如<a href="https://www.baidu.com" target="_self">腾讯</a>
  2. 内部链接: 网站内部页面之间的相互链接,直接链接内部页面名称即可,例如<a href="index.html">首页</a>
  3. 空链接: 如果当时没有确定链接目标时,<a href="#">首页</a>
  4. 下载链接: 地址链接的是.exe或.zip等形式的文件,会下载这个文件
  5. 网页元素链接:在网页中的各种网页元素,如文本、图像、表格、音频、视频等都可以添加超链接
  6. 锚点链接:点我们点击链接,可以快速定位到页面中的某个位置
    1. 在链接文本的 href 属性中,设置属性值为 #名字 的形式,如<a href="#two">第2集</a>
    2. 找到目标位置标签,里面添加一个id属性 =刚才的名字,如:<h3 id="two">第2集介绍</h3>

6.注释和特殊字符

6.1 注释

如果需要在 HTML 文档中添加一些便于阅读和理解但又不需要显示在页面中的注释文字,就需要使用注释标签
HTML中的注释以"<!--"开头,以"-->"结束。

6.2 特殊字符

在 HTML 页面中,一些特殊的符号很难或者不方便直接使用,此时我们就可以使用下面的字符来替代。
alt text

7.表格标签

7.1 表格的主要作用

表格主要用于显示、展示数据,因为它可以让数据显示的非常的规整,可读性非常好。特别是后台展示数据的时候,能够熟练运用表格就显得很重要。一个清爽简约的表格能够把繁杂的数据表现得很有条理

7.2 表格的基本语法

<table>
	<tr>
		<td>单元格内的文字</td>
	</tr>
</table>
  1. <table></table>是用于定义表格的标签。
  2. <tr></tr>标签用于定义表格中的行,必须嵌套在<table></table>标签中。
  3. <td></td>用于定义表格中的单元格,必须嵌套在<tr></tr>标签中。
  4. 字母 td 指表格数据(tabledata),即数据单元格的内容

7.3 表头单元格标签

一般表头单元格位于表格的第一行或第一列,表头单元格里面的文本内容加粗居中显示。<th>标签表示 HTML表格的表头部分(table head的缩写)

<table>
	<tr>
		<th>姓名</th>
	</tr>
</table>

7.4 表格和图片

表格的基本用法非常简单,只需要使用管状符号「|」和减号「-」来分割单元格和行即可。示例代码:

属性 描述
align left, center, right 设置表格内容的水平对齐方式
border 1或”” 设置表格边框的宽度(默认为「0」,即无边框)
cellpadding 像素单位 设置单元格内容与边框的距离,以「像素」计,默认为「1px」
cellspacing 像素单位 设置单元格之间的距离,以「像素」计,默认为「2px」
width 像素单位或百分比 设置表格的宽度

7.5 表格结构标签

使用场景:因为表格可能很长,为了更好的表示表格的语义,可以将表格分割成表格头部和表格主体两大部分在表格标签中,分别用:<thead>标签表格的头部区域、<tbody>标签 表格的主体区域,这样可以更好的分清表格结构。

以上标签都是放在 <table></table>标签中。

7.6 合并单元格

  1. 合并单元格的方式

    • 跨行合并:rowspan=”合并单元格的个数
    • 跨列合并:colspan=”合并单元格的个数”
  2. 目标单元格:(写合并代码)

    • 跨行:最上侧单元格为目标单元格,写合并代码
    • 跨列:最左侧单元格为目标单元格,写合并代码

7.7 合并单元格三步曲

  1. 先确定是跨行还是跨列合并,
  2. 找到目标单元格.写上合并方式=合并的单元格数量。比如:<td colspan="2"></td>
  3. 删除多余的单元格。

8.列表标签

表格是用来显示数据的,那么列表就是用来布局的。
列表最大的特点就是整齐、整洁、有序,它作为布局会更加自由和方便
根据使用情景不同,列表可以分为三大类:无序列表、有序列表和自定义列表

8.1 无序列表(重点)

<ul>标签表示 HTML 页面中项目的无序列表,一般会以项目符号呈现列表项,而列表项使用<i>标签定义。

无序列表的基本语法格式如下:

<ul>
	<1i>列表项1</1i>
	<li>列表项2</1i>
	<1i>列表项3</1i>
</ul>
  1. 无序列表的各个列表项之间没有顺序级别之分,是并列的。
  2. <ul></ul> 中只能嵌套 <li></li>,直接在 <ul></ul>标签中输入其他标签或者文字的做法是不被允许的。
  3. <li>与</li>之间相当于一个容器,可以容纳所有元素
  4. 无序列表会带有自己的样式属性,但在实际使用时,我们会使用 CSS 来设置。

8.2 有序列表 (数字列表)

在HTML中,有序列表是使用 <ol> 标签创建的,每个列表项都使用 <li> 标签标记。以下是代码示例:

<ol>
    <li>列表1</li>
    <li>列表2</li>
    ...
</ol>
  1. <ol></ol> 中只能嵌套 <li></li>,直接在 <ol></ol>标签中输入其他标签或者文字的做法是不被允许的。
  2. <li>与</li>之间相当于一个容器,可以容纳所有元素
  3. 无序列表会带有自己的样式属性,但在实际使用时,我们会使用 CSS 来设置。

8.3 自定义列表

8.1自定义列表的使用场景:

图片不见了
自定义列表常用于对术语或名词进行解释和描述,定义列表的列表项前没有任何项目符号

8.3 自定义列表(重点)

在 HTML标签中,<dl>标签用于定义描述列表(或定义列表),该标签会与<dt>(定义项目/名字)和<dd>(描述每一个项目/名字)一起使用。
其基本语法如下:

<dl>
	<dt>名词1</dt>
	<dd>名词1解释1</dd>
	<dd>名词1解释2</dd>
</dl>
  1. <d></dl>里面只能包含<dt>和<dd>
  2. <dt><dd>个数没有限制,经常是一个<dt>对应多个<dd>

9.表单标签

9.1 表单构成

在 HTML 中,一个完整的表单通常由表单域、表单控件(也称为表单元素)和 提示信息3个部分构成.
alt text

9.2 表单域

表单域是一个包含表单元素的区域。
在 HTML标签中,<form>标签用于定义表单域,以实现用户信息的收集和传递。
<form>会把它范围内的表单元素信息提交给服务器.

<form action="url地址"method="提交方式"name="表单域名称">各种表单元素控件
</form>

属性表格

属性名 属性值 作用
action url地址 用于提交表单时提交到的服务器程序的url地址
method get/post 用于提交表单时的方法,其取值为get或post
name 名称 用于提交表单时的名称,以便区分同一个页面的不同表单

9.3 表单控件(表单元素)

在表单域中可以定义各种表单元素,这些表单元素就是允许用户在表单中输入或者选择的内容控件

  1. input输入表单元素
  2. select下拉表单元素
  3. textarea 文本域元素
9.3.1 <input> 表单元素

在英文单词中,input是输入的意思,而在表单元素中<input>标签用于收集用户信息
<input>标签中,包含一个type属性,根据不同的type属性值,输入字段拥有很多种形式(可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等)。

<input type="属性值" />
  • <input/>标签为单标签
  • type 属性设置不同的属性值用来指定不同的控件类型

alt text

除 type属性外,<input>标签还有其他很多属性,其常用属性如下
alt text

  1. name 和value 是每个表单元素都有的属性值,主要给后台人员使用.
  2. name 表单元素的名字,要求 单选按钮和复选框要有相同的name值
  3. checked属性主要针对于单选按钮和复选框,主要作用一打开页面,就要可以默认选中某个表单元素
  4. maxlength是用户可以在表单元素输入的最大字符数,一般较少使用
9.3.2 <label> 标签

<label>标签为input元素定义标注(标签)
<label>标签用于绑定一个表单元素,当点击<label>标签内的文本时,浏览器就会自动将焦点(光标)转到或者选择对应的表单元素上,用来增加用户体验.
语法: 要去往的标签的id属性值和label标签的for属性值一致

<label for="sex"></label>
<input type="radio" name="sex"id="sex"/>
9.3.3 <select> 标签

使用场景:在页面中,如果有多个选项让用户选择,并且想要节约页面空间时,我们可以使用<select>标签控件定义下
拉列表。
语法:

<select>
	<option>选项1(默认文本)</option>
	<option>选项2</option>
	<option>选项3</option>
	...
</select>
  1. <select>中至少包含一对<option>
  2. <option>中定义selected = “selected”时,当前项即为默认选中项。
9.3.4 textarea文本域 表单元素

语法:

<textarearows="3" cols="20">
文本内容
</textarea>
1.通过 <textarea>标签可以轻松地创建多行文本输入框。
2.cols='每行中的字符数",rows="显示的行数"我们在实际开发中不会使用,都是用 CSS 来改变大小

9.4 表单提交

在HTML表单中,提交按钮可以通过<button>或者<input type="submit">来创建。这两种方式都可以用来提交表单数据到服务器。

<button>标签可以包含文本或图像,并且可以通过CSS样式进行自定义。它还可以包含JavaScript代码,以便在点击时执行特定的操作。例如,你可以使用<button>标签来创建一个带有图标的提交按钮,或者一个在点击时会弹出确认对话框的按钮。

<input type="submit">标签则是一个简单的提交按钮,它通常只包含文本,并且不能包含JavaScript代码。它的外观也比较简单,通常是一个矩形按钮,上面显示着提交按钮的文本。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>单文件上传</title>
</head>
<body>
    <form action="" method="post" enctype="multipart/form-data">
        {% csrf_token %}
        <p>用户名: <input type="text" name='uname'></p>
        <p>头像: <input type="file" name="icon"></p>
        <button>
            提交
        </button>
    </form>
</body>
</html>

在你的代码中,你使用了<button>标签来创建提交按钮,并且将按钮的文本设置为“上传”。如果你想使用<input type="submit">标签来代替<button>标签,你只需要将<button>标签替换为<input type="submit">标签,并将按钮的文本设置为“上传”即可。例如:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>单文件上传</title>
</head>
<body>
    <form action="" method="post" enctype="multipart/form-data">
        {% csrf_token %}
        <p>用户名: <input type="text" name='uname'></p>
        <p>头像: <input type="file" name="icon"></p>
        <input type="submit" value="上传">
    </form>
</body>
</html>

这样,当用户点击“上传”按钮时,表单数据也会被发送到服务器。