HTML笔记总结

前言

网页

什么是网页

网站是指在因特网上根据一定的规则,使用 HTML 等制作的用于展示特定内容相关的网页集合。

网页是网站中的一“页”,通常是 HTML 格式的文件,它要通过浏览器来阅读。

网页是构成网站的基本元素,它通常由图片、链接、文字、声音、视频等元素组成。通常我们看到的网页,

常见以 .htm 或 .html 后缀结尾的文件,因此将其俗称为 HTML 文件。


什么是HTML?

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

HTML 不是一种编程语言,而是一种标记语言 (markup language)。

标记语言是一套标记标签 (markup tag)。


网页的形成

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


⭐️常用浏览器及其内核

内核又称渲染引擎:负责读取网页内容,整理讯息,计算网页的显示方式并显示网页

浏览器内核
chromeBlink
火狐Gecko
IETrident
SafariWebkit
OperaBlink

web标准

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

为什么需要web标准

浏览器不同,它们显示页面或者排版就有些许差异。

通过web标准,使浏览器展示统一内容。

遵循 Web 标准可以

  • 让不同的开发人员写出的页面更标准、更统一
  • 让 Web 的发展前景更广阔。
  • 内容能被更广泛的设备访问。
  • 更容易被搜寻引擎搜索。
  • 降低网站流量费用。
  • 使网站更易于维护。
  • 提高页面浏览速度。

Web 标准的构成

主要包括结构(Structure) 、表现(Presentation)和行为(Behavior)三个方面。

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

Web 标准提出的最佳体验方案:结构、样式、行为相分离

结构写到 HTML 文件中, 表现写到 CSS 文件中, 行为写到 JavaScript 文件中。

HTML标签

语法规范

基本语法概述

  1. HTML 标签是由尖括号包围的关键词,例如 。

  2. HTML 标签通常是成对出现的,例如 和 ,我们称为**双标签。**标签对中的第一个标签是开始标签,第二个标签是结束标签。

  3. 有些特殊的标签必须是单个标签(极少情况),例如
    我们称为单标签。


标签关系

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

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

基本结构标签(骨架标签)

<!DOCTYPE html>
<!-- thml 根标签 -->
<html lang="zh-CN">
    <!-- head 头部标签 -->
	<head>
		<meta charset="UTF-8"/>
        <!-- title 标题标签 -->
		<title>第一个HTML</title>
	</head>
    <!-- body 主体标签 -->
    <body>
		主体内容
	</body>
</html>
标签名定义说明
HTML标签页面中最大的标签,称之为 根标签
文档的头部head标签中必须要设置的标签为 title
文档的标题网页的标题
文档的主体包含文档的__所有内容__,页面内容都放在 body 里面
  • html 开始标签里面设置 lang 语言种类
  • title 标签 定义网页的标题 -> (显示在浏览器工具栏,显示在搜索引擎结果页面,显示在收藏夹中默认)的标题

⭐️文档类型声明标签

<!DOCTYPE>文档类型声明,作用就是告诉浏览器使用哪种HTML版本来显示网页。

  1. 声明位于文档中的最前面的位置,处于 标签之前。

  2. <!DOCTYPE>不是一个 HTML 标签,它就是 文档类型声明 标签。


lang 语言种类

用来定义当前文档显示的语言。

  • en定义语言为英语

  • zh-CN定义语言为中文


⭐️字符集

字符集 (Character set)是多个字符的集合。以便计算机能够识别和存储各种文字。

在标签内,可以通过 标签的 charset 属性来规定 HTML 文档应该使用哪种字符编码。

<meta charset=" UTF-8" />

charset 常用的值有:GB2312 、BIG5 、GBK 和 UTF-8,其中 UTF-8 也被称为 万国码,基本包含了全世界所有国家需要用到的字符。


head部分

<!DOCTYPE html>
<html lang="en">
<head>
	<!-- charster字符集,utf-8 万国码,几乎覆盖全球的字符 -->
	<meta charset="utf-8">
	
	<!-- 定义网页的关键词,通常6~8个关键词,关键词之间用 英文逗号 隔开 -->
	<meta name="Keywords" content="淘宝,关键词1,关键词2,关键词3,关键词4,关键词5,关键词6"/>
	<!-- 定义网页的描述 -->
	<meta name="Description" content="描述网站的主题业务和主题概括"/>
	<!-- 定义网页的作者,content里面为 作者名 -->
	<meta name="author" content="焦冠达"/>
	<!-- 定时刷新网页,content里面是刷新间隔单位为 秒 -->
	<meta http-equiv="refresh" content="30" />
	
	<!-- title 定义网页的标题 -> 显示在浏览器工具栏,显示在搜索引擎结果页面,显示在收藏夹中默认的标题 -->
	<title>head</title>
	
	<!-- 定义标题的图标 -->
	<!-- rel 定义源文档与目标文档的关系属性 -->
	<!-- href 定义被链接文档的路径 -->
	<link rel="shortcut icon" href=" /favicon.ico" />
	
	<!-- 引入外部CSS文件 -->
	<!-- type 定义被链接文档的类型 -->
	<link rel="stylesheet" type="text/css" href="../notes.css"/>
	
	<!-- 添加内部样式表 -->
	<style type="text/css">
    </style>
    
	<!-- 用于加载js脚本文件 -->
	<script type="text/javascript">
	</script>
	
	<!-- 脚本未被执行时的代替内容 -->
	<noscript></noscript>
</head>
<body>
</body>
</html>

常用标签

标题标签

h1~h6:作为标题使用,并且依据重要性递减。

  • 一个标题独占一行
  • 加了标题的文字会变的加粗,font-weight=700; 正常字体为 400
  • 一个页面 h1 标签通常只用一次
  • h2 标签少用,h3 标签多用

段落和换行标签

p 标签用于定义段落,它可以将整个网页分为若干个段落。

单词 paragraph [ˈpærəgræf] 的缩写,意为段落。

  • 文本在一个段落中会根据浏览器窗口的大小自动换行。

  • 段落和段落之间保有段间距。

br 标签 强制换行

单词 break 的缩写,意为打断、换行。

  • br 标签是个单标签
  • br 标签可以看做块级元素

hr标签

  • hr 标签定义 HTML 页面中的主题变化(比如话题的转移),并显示为一条水平线。
  • hr 元素被用来分隔 HTML 页面中的内容(或者定义一个变化)。
😗随机文本生成

lorem+number 生成(number个单词)


文本格式化标签

语义标签说明
加粗推荐 strong ,盲人使用时语气更强烈
倾斜推荐 em
删除线推荐 del
下划线推荐 ins

div 和 span 标签

div 和 span 是没有语义的,它们就是一个盒子,用来装内容的。

div 是 division 的缩写,表示分割、分区。span 意为跨度、跨距。

  • div 标签用来放其它标签,一行只能放一个 div 标签。
  • span 标签用来放文字,一行上可以有多个span标签。

图片标签

img 标签用于定义 HTML 页面中的图像。

单词 image 的缩写,意为图像。

<img src="图像URL" />

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


超链接标签

a 标签用于定义超链接,作用是从一个页面链接到另一个页面。

单词 anchor [ˈæŋkə®] 的缩写,意为:锚。

<a href="跳转目标" > 文本或图像 </a>

空链接:#

网页元素链接

<a href="http://www.apple.png">苹果图片</a>

下载链接:地址链接的是 .exe 或者 .zip .rar 等压缩包形式

锚点链接:当我们点击链接时。可以快速定位到网页中某个位置

  • 在链接文本的href属性中,设置属性值为 #名字 的形式,如

    <a href="#two">第二集</a>
    
  • 找到目标标签,里面添加 一个 id 属性,如

    <h3 id="two">第二集介绍</h3>
    

特殊字符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OqXgWfJ8-1633700518385)


表格标签

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

表格不是用来布局页面的,而是用来展示数据的。

<table border="" cellspacing="0" cellpadding="20">
	<tr>
		<th>name</th>
        <th>class</th>
        <th>school</th>
	</tr>
	<tr>
		<td>zhangsan</td>
        <td>101</td>
        <td>linyi</td>
	</tr>
	<tr>
		<td>lisi</td>
        <td>102</td>
        <td>linyi</td>
	</tr>
	<tr>
		<td>wangwu</td>
        <td>103</td>
        <td>linyi</td>
	</tr>
</table>
tr标签

tr 标签用于定义表格中的行,必须嵌套在 table 标签中。

td标签

td 用于定义表格中的单元格,必须嵌套在 tr 标签中。

td 指表格数据(table data),即数据单元格的内容。

<table border="" cellspacing="0" cellpadding="20">
			<thead>
                <tr>
					<th>名字</th>
					<th>班级</th>
					<th>学校</th>
              	</tr>
			</thead>
			<tbody>
				<tr>
					<td>张三</td>
					<td>101</td>
					<td>康杰</td>
				</tr>
				<tr>
					<td>李四</td>
					<td>101</td>
					<td>康杰</td>
				</tr>
				<tr>
					<td>王五</td>
					<td>101</td>
					<td>康杰</td>
				</tr>
			</tbody>
		</table>
thead标签

用于定义表格的头部。 内部必须拥有 标签。 一般是位于第一行。

tbody标签

用于定义表格的主体,主要用于放数据本体 。

合并单元格
  • 跨行合并:rowspan=“合并单元格的个数”
  • 跨列合并:colspan=“合并单元格的个数”
  • 先确定是跨行还是跨列合并。
  • 找到目标单元格. 跨行:最上侧单元格为目标单元格;跨列:最左侧单元格为目标单元格
  • 写上合并方式 = 合并的单元格数量。比如:。
  • 删除多余的单元格。

列表标签

表格是用来显示数据的,那么列表就是用来布局的。

列表最大的特点就是整齐、整洁、有序,它作为布局会更加自由和方便。

根据使用情景不同,列表可以分为三大类:无序列表、有序列表和自定义列表

无序列表

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

<ul>
 <li>列表项1</li>
 <li>列表项2</li>
 <li>列表项3</li>
 ...
</ul>
  • 无序列表的各个列表项之间没有顺序级别之分,是并列的。

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

  • li 与 /li 之间相当于一个容器,可以容纳所有元素。

有序列表

ol 标签用于定义有序列表,列表排序以数字来显示,并且使用 li 标签来定义列表项。

<ol>
 <li>列表项1</li>
 <li>列表项2</li>
 <li>列表项3</li>
 ...
</ol>
  • ol 中只能嵌套li,直接在 ol 标签中输入其他标签或者文字的做法是不被允许的。

  • li 与 /li 之间相当于一个容器,可以容纳所有元素。

自定义列表

dl 标签用于定义描述列表(或定义列表),该标签会与 dt(定义项目/名字)和 dd(描述每一个项目/名字)一起使用。

<dl>
 <dt>名词1</dt>
 <dd>名词1解释1</dd>
 <dd>名词1解释2</dd>
</dl>
  • dl 里面只能包含 dt 和 dd。

  • dt 和 dd个数没有限制,经常是一个dt 对应多个dd。


表单标签

表单域是一个包含表单元素的区域。

在 HTML 标签中, form 标签用于定义表单域,以实现用户信息的收集和传递。

form 会把它范围内的表单元素信息提交给服务器。

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

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

input标签

input 是输入的意思,而在表单元素中 input 标签用于收集用户信息。

在 input 标签中,包含一个 type 属性,根据不同的 type 属性值,输入字段拥有很多种形式(可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等)。

<input type="属性值" />
  • input 标签为单标签
  • type 属性设置不同的属性值用来指定不同的控件类型
属性值描述
button定义点击按钮,后期搭配 JS 使用
checkbox定义复选框
file定义输入字段和“浏览”按钮,供文件上传
hidden定义隐藏的传入字段
image定义图像形式的提交按钮
password定义密码字段,该字段中的字符被掩码
radio定义单选按钮,必须有相同的name属性才能实现多选一
reset定义重置按钮,重置按钮会清除表单中的所有数据
submit定义提交按钮,提交按钮会把表单数据发送到服务器。
text定义单行的输入字段,用户可在其中输入文本。默认宽度为 20 个字符
label标签

label 标签为 input 元素定义标注(标签)

label 标签用于绑定一个表单元素, 当点击 label 标签内的文本时,浏览器就会自动将焦点(光标)转到或者选择对应的表单元素上,用来增加用户体验.

<label for="sex"></label>
<input type="radio" name="sex" id="sex" />
  • label 标签的 for属性 应当与相关元素的 id属性 相同
select标签

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

<select>
 <option>选项1</option>
 <option>选项2</option>
 <option>选项3</option>
 ...
</select>
  • select 中至少包含一对 option
textarea标签

textarea 标签是用于定义多行文本输入的控件。

当用户输入内容较多的情况下,我们就不能使用文本框表单了,此时我们可以使用 textarea 标签。

<textarea rows="3" cols="20">
 文本内容
</textarea>

框架标签iframe

通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面。

height 和 width 属性用来定义iframe标签的高度与宽度。

属性默认以像素为单位, 但是你可以指定其按比例显示 (如:“80%”)。

frameborder 属性用于定义iframe表示是否显示边框。

设置属性值为 “0” 移除iframe的边框:

<iframe src="URL" width="200" height="150" frameborder="0" ></iframe>
⭐️iframe 框架的优缺点

优点:

  • iframe 能够原封不动的把嵌入的网页展现出来。
  • 如果有多个网页引用 iframe,那么你只需要修改 iframe 的内容,就可以实现调用的每一个页面内容的更改,方便快捷。
  • 网页如果为了统一风格,头部和版本都是一样的,就可以写成一个页面,用 iframe 来嵌套,可以增加代码的可重用。
  • 如果遇到加载缓慢的第三方内容如图标和广告,这些问题可以由 iframe 来解决。

缺点:

  • 框架结构中出现各种滚动条
  • iframe 会阻塞主页面的 Onload 事件
  • 搜索引擎的检索程序无法解读这种页面,不利于 SEO
  • iframe 和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。

⭐️H5新特性

HTML5 新增的语义化标签

以前布局,我们基本用 div 来做。div 对于搜索引擎来说,是没有语义的。

header:头部标签

nav导航标签

article:内容标签

section:定义文档某个区域

aside:侧边栏标签

footer:尾部标签

注意:

  • 这种语义化标准主要是针对搜索引擎的

  • 这些新标签页面中可以使用多次

  • 在 IE9 中,需要把这些元素转换为块级元素

  • 其实,我们移动端更喜欢使用这些标签

  • HTML5 还增加了很多其他标签

语义化

用正确的标签做正确的事情。
html 语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析;即使在没有样式 CSS 情况下也以一种文档格式显示,并且是容易阅读的;
搜索引擎的爬虫也依赖于 HTML 标记来确定上下文和各个关键字的权重,利于 SEO;
使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。


多媒体标签

音频audio
 <audio src="文件地址" controls="controls"></audio>
属性描述
autoplayautoplay如果出现该属性,音频就绪后马上自动播放
controlcontrols如果出现该属性,会向用户显示控件,比如播放按钮
looploop如果出现该属性,音频自动循环播放
srcurl要播放音频的url
视频video
 <video src="文件地址" controls="controls"></video>
属性描述
autoplayautoplay自动播放(谷歌浏览器需要添加muted来解决自动播放问题)
controlscontrols显示播放控件
widthpx设置播放器宽度
heightpx设置播放器高度
looploop自动循环
preloadauto/none规定是否预先加载视频,如果右autoplay属性,忽略该属性
srcurl视频url地址
posterimgurl等待加载的画面图片
mutedmuted静音播放
多媒体标签总结
  • 音频标签和视频标签使用方式基本一样
  • 浏览器支持情况不同
  • 谷歌浏览器把音频和视频自动播放禁用了
  • 我们可以给视频标签添加 muted 属性来静音播放视频,音频不可以(通过 JS 解决)
  • 视频标签是重点,我们经常设置自动播放,不使用controls 控件,循环和设置大小属性

新增input 类型

属性值说明
type=“email”限制用户输入必须为Email属性
type=“url”限制用户输入必须为URL属性
type=“date”限制用户输入必须为日期属性
type=“time”限制用户输入必须为时间属性
type=“month”限制用户输入必须为月属性
type=“week”限制用户输入必须为周属性
type=“number”限制用户输入必须为数字属性
type=“tel”限制用户输入必须为手机号码
type=“search”搜索框
type=“color”生成一个颜色选择表单

新增表单属性

属性说明
requiredrequired表单拥有该属性表示其内容不能为空,必填
placeholder提示文本表单的提示信息,存在默认值将不显示
autofocusautofocus页面加载完成自动聚焦到指定表单
autocompleteoff/on当用户再字段开始键入是,浏览器基于之前键入过的值,应该希纳是出再字段值填写的选项,默认已经打开,还需要name属性,同时提交成功过。
multiplemultiple可以多选文件提交

canvas画布

学了JS再说

补充

HTML和XHTML的区别

XHTML是XML重写了HTML的规范,比HTML更加严格,应该使用XHTML,表现如下:
1、XHTML中所有的标记都必须有一个相应的结束标签;
2、XHTML所有标签的元素和属性的名字都必须使用小写;
3、所有的XML标记都必须合理嵌套;
4、所有的属性都必须用引号“”括起来;
5、把所有‹和&特殊符号用编码表示;
6、给所有属性附一个值;
7、不要在注释内容中使用“–”;
8、图片必须使用说明文字。


Label 的作用是什么?是怎么用的

label 标签来定义表单控制间的关系,当用户选择该标签时,浏览器会自动将焦点转到和标签相关的表单控件上。
两种用法:
一种是id绑定:

label的for属性的属性值为 input id 值

<label for="name">number</label>
<input type="text" name="name" id="name">

一种是嵌套

<label>date:<input type="text" name="b"></label>

请描述下 SEO 中的 TDK

在 SEO 中,所谓的 TDK 其实就是 title、description、keywords 这三个标签,title 标题标签,description 描述标签,keywords 关键词标签


相对路径和绝对路径

目录文件夹:就是普通文件夹,里面只不过存放了我们做页面所需要的相关素材,比如 html 文件、图片等。

根目录:打开目录文件夹的第一层就是根目录

相对路径:以引用文件所在位置为参考基础,而建立出的目录路径。

相对路径分类符号说明
同一级路径引入文件位于html文件同一级
下一级文件/引入文件位于html文件下一级
上一级路径…/引入文件位于html文件上一级

绝对路径:是指目录下的绝对位置,直接到达目标位置,通常是

  • 从盘符开始的路径。"D:\web\img\logo.gif”
  • 完整的网络地址“http://www.itcast.cn/images/logo.gif”

⭐️src和href的区别

src和href都是用于外部资源的引入,像图片、CSS文件、HTML文件、js文件或其他web页面等。

src (Source)源这个属性是将资源嵌入到当前文档中元素所在的位置。

href (Hypertext Reference) 超文本引用href这个属性指定web资源的位置,从而定义当前元素(如锚点a)或当前文档(如链接)与目标锚点或目标资源之间的联系。

它们之间的主要区别可以用这样一句话来概括:src用于替代这个元素,而href用于建立这个标签与外部资源之间的关系。

src是source的缩写,是指向外部资源的位置,指向的内部会迁入到文档中当前标签所在的位置;在请求src资源时会将其指向的资源下载并应用到当前文档中,例如js脚本,img图片和frame等元素。

<script src="js.js"></script>

当浏览器解析到这一句的时候会暂停其他资源的下载和处理,直至将该资源加载,编译,执行完毕,图片和框架等元素也是如此,类似于该元素所指向的资源嵌套如当前标签内,这也是为什么要把js饭再底部而不是头部。

<link href="common.css" rel="stylesheet"/>

当浏览器解析到这一句的时候会识别该文档为css文件,会下载并且不会停止对当前文档的处理,这也是为什么建议使用link方式来加载css而不是使用@import。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值