先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
-
- input 标签
-
HTML标签 — 单选框、复选框
-
HTML标签 — 按钮
-
- 文件上传:file
-
HTML标签 — 文本域
-
- textarea属性
-
HTML标签 — 下拉菜单
-
HTML标签 — label标签
-
HTML字符实体
================================================================
为什么选择前端开发其实可以去了解一下这门技术就可以了
了解前端开发
-
是什么?
-
做什么?
-
带来什么?
前端开发是什么
-
前端开发是创建Web页面或者app等前端界面呈现给用户的过程
-
核心技术:HTML、CSS、JavaScript以及衍生出的各种技术、框架等
前端开发可以做什么
-
在此之前,我们要先进行一个对比
-
在早期互联网产品中,我们最多接触的就是网页
-
功能少
-
速度慢
-
不美观
-
针对这些缺点,前端开发对其进行了很大程度的改变
-
内容丰富
-
功能强大
-
用户体验更强
-
除了在网页方面带来的改变之后,前端开发在更多的领域,也可以去实现他的价值
前端开发应用场景
-
PC
-
移动APP
-
小程序
-
游戏
-
服务端
-
随着前端技术的不断更新,不断增加,我们能够使用到的应用场景会越来越多,功能越来越强大
前端开发带来什么
-
增加了我们的就业机会
-
早期我们只能从事一些网页制作的工作,但是随着前端开发的不断发展,我们能从事的工作变得更加多种多样,比如说:
-
web前端开发工程师
-
小程序开发工程师
-
移动web开发工程师
-
前端架构师 / 前端专家
-
随着工作年限与技术的增加,可以提高我们的薪酬
================================================================
前端涵盖的技术有很多,需要合理的安排学习路线
-
前置知识
-
计算机基本认识
-
应用的概念
-
前端和后端
-
入门阶段 — 正式学习前端相关技能
-
HTML
-
HTML语法
-
HTML语义化
-
SEO基础
-
CSS
-
CSS语法
-
页面布局
-
媒体查询
-
CSS 3
-
JavaScript进阶 — 重点!学完之后才算真正的前端入门
-
JavaScript语法
-
基础的数据结构
-
Web APIs
-
ES6+
-
模块化
-
TypeScript
-
包管理阶段 — 入门之后要有一个很困难的转变期,在此之前要现在此阶段过渡,对后期学习做铺垫
-
npm
-
yarn
-
CSS进阶 — 进阶阶段,CSS的编写也会越来越不一样
-
CSS预处理器
-
SASS
-
LESS
-
PostCSS
-
…
-
CSS框架
-
Bootstrap
-
table
-
Semantic UI
-
Materialize CSS
-
…
-
CSS架构规范
-
OOCSS
-
BEM
-
SMACSS
-
构建工具 — 让我们的代码变得更加高效规范,更符合项目编写
-
代码校验工具
-
ESLint
-
StyleLint
-
MarkdownLint
-
模块打包工具
-
Webpack
-
Parcel
-
Rollup
-
任务运行器
-
npm script
-
Makefile
-
Gulp
-
Grunt
-
Broccoli
-
流行的框架 — 真正工作中会去使用的框架,此阶段之后前端能力会有一个质的提升,也能够得到一个很好的工作机会
-
VUE.js
-
VueX
-
Element UI
-
React.js
-
Redux
-
AntDesign
-
Mobx
-
CSS in JS
-
Angular
-
RxJS
-
ngrx
-
持续学习 — 学完框架并不算结束,我们可以继续学习,增加我们的技术水平,这个部分我们可以掌握更多的技能,不要把自己局限在我们当前的这个水平之上,这会对我们之后的职业发展和技术提升都有很大的帮助
-
Node.js
-
渐进式Web应用
-
服务端渲染
-
静态站点生成器
-
桌面应用
-
移动应用
-
桌面应用
-
…
================================================================
-
认识网页 — 网页与我们的HTML是息息相关的
-
网页的本质
-
在此我们需要做一个对比
-
用户眼中的网页
-
很多的文字与图片,并且按照一定的格式去排版
-
程序员中的网页
-
代码
-
程序员如何制作网页
-
HTML就是用来制作网页文件的
-
浏览器查看的网页都是.html或者.htm文件
-
HTML叫做超文本标记语言(Hypertext Markup Language)用于搭建网页的结构
-
网页的组成(一)
-
前端三层:
-
HTML(结构层 — 用来搭建网页的整个结构骨架)
-
CSS(样式层 — 美化网页结构)
-
JavaScript(行为层 — 只做网页中的交互效果:点击、切换等)
-
举例说明:HTML就像我们的人体一样,有了整体架构,但是只有架构是不够美观的,需要一些衣服和其他配饰来美化,这就是CSS的作用,然后我们需要有一些行为能力,比如:走路、吃饭、唱歌、跳舞,这就是JavaScrip来完成的
-
网页的组成(二)
-
其他多媒体内容:图片、视频、音频、超级链接等
-
这些东西包括我们之前的前端三层,都是我们要去制作的具体存在的文件,这些文件在我们的网络中都是真是的物理存在的文件,类似于我们在本地的计算机里边,存储一张图片是真实的存储在我们的计算机中,而互联网中的网页是真实存在于互联网上的,至于存在在哪里,也就是我们现在要思考的一个问题
-
这些网页文件是如何通过互联网提供用户观看使用的?(这其实是一个很复杂的过程,但是只是为了大家理解所以只是简单说明)
-
互联网运行过程:
程序员将网页源文件上传到服务器进行存储,用户后期通过客户端(如浏览器软件)发送HTTP请求到服务器,服务器接收请求后进行相应,将存储的相关文件通过HTTP响应回传到用户本地客户端,最终通过客户端将网页文件进行渲染,显示出最终用户看到的网页效果
-
通过一系列浏览器软件查看网页,查看的过程中要去请求服务器上的网页文件,请求过程中会用到一个HTTP协议,客户端通过输入网址等方式去发送一个HTTP请求到服务器,服务器已经存储了程序员上传上来的文件,一旦接受到这个请求,他回去将我们所有的相关的网页文件回传给客户端,回传的过程中是通过一个HTTP响应进行回传,那么我们客户端接受到这个HTML文件之后,他回去根据相关的语法对HTML语言进行一个解读,并且把配套的所有文件再去请求响应过来,最终加载为我们用户看到的效果
-
所以这个过程实际上就是一个我们在客户端和服务器之间进行一个传输的过程,传输过程中需要用到的就是一个HTTP协议的工具
===============================================================
-
解析互联网运行过程
-
程序员将网页源文件上传到服务器进行存储,用户后期通过客户端(如浏览器软件)发送HTTP请求到服务器,服务器接收请求后进行相应,将存储的相关文件通过HTTP响应回传到用户本地客户端,最终通过客户端将网页文件进行渲染,显示出最终用户看到的网页效果
-
服务器(server)就是一种特殊的计算机,也包括处理器、硬盘、内存、系统总线等,但是由于需要提供更可靠的服务,因此在处理能力、稳定性、可靠性、安全性等方面要求较高。
-
作用:
-
对于WEB来说,用于存储开发人员上传的网页数据,且需要响应服务请求,并进行处理。
-
要求:
-
对于网站服务器来说,为了让用户随时进行访问,必须24小时不间断工作
云服务器
- 目前绝大多数网站都采用的是云服务器(Elastic Compute Service, ECS)云服务器是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效。用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器
-
客户端(Client)也叫用户端,指的是普通用户使用的终端,客户端有多种形式,比如最常用的就是浏览器、app等,而web开发最主要的客户端形式还是浏览器。
-
浏览器(Browser)
-
是一种用户上网搜索、查看信息资源的应用程序。
-
功能:
-
用于发送HTTP请求到服务器
-
接收服务器发挥的HTTP响应
-
渲染HTML网页
-
主流浏览器
-
微软的IE和Micrisift Edge
-
Mozilla的Firefox
-
苹果公司的safari
-
Google的Chrome
-
Opera软件公司的Opera
-
区别:主流浏览器内核不容
-
因为不同浏览器使用的内核及所支持的HTML等网页语言标准不同,对网页的渲染效果会有差异
| 浏览器 | 渲染引擎(内核) | 说明 |
| — | — | — |
| IE/Edge | Trident | IE内核 |
| FireFox | Gecko | FireFox内核 |
| Safari | Webkit | |
| Chrome | Webkit > Blink | 统称为Chromium内核或Chrome内核 |
| Opera | Presto > Webkit > Blink | |
- 推荐:使用Chrome浏览器(渲染效果好,市场占有率高,自带开发者调试工具)
浏览器功能
-
作用1:发送HTTP请求,发送的方式是在浏览器地址栏输入对应的网址,或者点击超级链接
-
作用2:接收服务器发回的HTTP响应,服务器会发回一个HTML给浏览器
-
作用3:将接收到的HTML进行解析并显示
Hypertext Transfer Protocol:超文本传输协议。是客户端浏览器或其他程序与WEB服务器之间的应用层通信协议
HTTP请求
-
request,浏览器根据网址向对应的服务器发送请求
-
发送请求的方法:在浏览器地址中输入网址,或者点击网址链接
-
HTML页面解析过程中,会发出多个http请求,包含网页的图片、视频、音频等文件请求
HTTP响应
- response,服务器根据请求响应一个HTML文件,将HTML传输给客户端,在浏览器中进行HTML网页的渲染
================================================================
- 纯文本格式,就是没有任何文本修饰的,没有任何粗体,下划线,斜体,图形,符号或特殊字符及特殊打印格式的文本,只保存文本,不保存其格式设置
-
纯文本格式
-
最常见的是.txt文件,在存储和传输过程中,只能保存文字,不能保存格式。
-
富文本格式
-
与纯文本对应,最常见的是.rtf文件,类似.doc文件,内部可以保存文本的样式、图片等
-
文件只能保存文本,不保存其他的格式或非文本内容,有利于网络传输
-
所有的纯文本格式文件,可以通过直接更改扩展名的方式更改保存格式
-
纯文本格式文件可以使用任意的纯文本编辑器进行查看和编辑
了解纯文本文件只是为了引出后边的知识点,因为html、css、js文件都是纯文本格式文件,内部都是只能去使用文字进行编辑,不能直接在编辑过程中插入图片等内容
-
Hypertext Transfer Protocol:超文本标记语言。是用来制作网页的一种标记语言。
-
HTML是一种纯文本格式的文件,内部只能书写文字内容,不能添加图片、音频、视频等,但是在网页中给用户呈现的效果却包含了文字以外的内容,这种效果就是HTML语言区别于其他文件的不同之处。
HTML的重要概念
-
超文本
-
是超级文本的缩写,简单来说超文本就是用于链接另一个文本或多媒体内容的文本,比如链接到图片、链接、音频、视频、程序等
-
标记
-
又叫做标签(HTML tag)有特殊的书写规范,是写给浏览器的一种语法格式,结合普通的文字信息,实现特殊的语义或显示内容。在编辑器中可以编辑和查看,在浏览器中不显示
HTML功能
利用标记给普通的文本添加语义、描述超文本内容,搭建网页的基本结构
HTML语义化
HTML文件中,如果没有使用特殊语义的标记,也可以实现网页显示效果,但是利用标记给普通的文字添加了不同的语义,能够让网站的结构划分更加清晰
语义化网页的优势
-
方便代码的阅读和后期的维护
-
便于浏览器或是网络爬虫更好的解析网站内容
-
使用语义化标签有利于SEO搜索引擎优化,提高网站的搜索排名
==================================================================
- W3C:world wide web consortium,万维网联盟。专门发布和维护互联网的规范和标准
| 版本 | 发布时间 | 备注 |
| — | — | — |
| HTML1.0 | 1993.06 | 互联网工程小组(IETF)发布的工作草案 |
| HTML2.0 | 1995.01 | 2000年6月发布之后被宣布已经过时 |
| HTML3.2 | 1997.01.14 | W3C推荐标准 |
| HTML4.0 | 1999.12.18 | W3C推荐标准,引入了样式表CSS,是吸纳了结构和样式分离 |
| HTML4.01 | 1999.12.24 | W3C推荐标准,修复了HTML4.0中的漏洞 |
| XHTML1.0 | 2000.01.20 | 在HTML4.01基础上进行的升级扩展和严格化 |
| HTML5 | 2008.1.22 | HTML5在2012年已经形成了稳定的版本 |
HTML标记通常被称为HTML标签(HTML tag)标签在书写和使用过程中,必须遵循特定的语法
HTML标签语法
- 标签名必须书写在一堆尖括号内部
- 标签分为单标签和双标签,双标签必须成对出现
单标签
- 双标签包含开始标签和结束标签,结束标签必须书写关闭符号/,单标签也需要进行自封闭书写。在HTML5中,单标签可以不写关闭符号。
-
HTML元素指的是从开始标签到结束标签的所有内容,包含开始标签、元素内容、结束标签。
-
例如:双标签内部包含的纯文本内容,就是元素内容
元素内容
- 元素内容可以使纯文本,也可以是其他的HTML元素。这种元素内容包含其他HTML元素的情况,我们可以称为嵌套,也就是div标签元素内部嵌套了p标签元素。
div元素内部嵌套p元素
- 一个HTML元素div的内容可能是多个其他元素组成,例如p和h1,此时我们习惯称div是p和h1的父级元素,p和h1是div的自己元素,而p和h1属于统计元素,这种嵌套关系可以有多层
div元素内部嵌套p元素
div元素内部嵌套h1元素
- 但标签是不能添加元素内容的,可以称为空元素
标签级别
-
根据标签内部可以存放的元素内容不同,可以将双标签划分为两个级别
-
容器级:标签内部可以存放任意内容,包含容器级标签。比如:h1,div等
-
文本级:标签内部只能存放文字或类似文字的内容,比如存放图片、标签元素等。比如p等。
HTML元素的特性
- 元素间对空格、换行、缩进等形成的空白不敏感,有无空白对在浏览器中加载的效果没有影响。浏览器识别的是元素的开始和结束以及互相之间的嵌套关系。
段落内容
等价于
段落内容
段落内容
段落内容
段落内容
段落内容
- 空白折叠现象:元素内容如果是文本,所有文字(类似文字内容)之间如果有空格、换号、缩进等空白字符,在浏览器中加载时,连接在一起的空白会折叠成一个空格显示,这就是空白折叠现象。
段落 内容
等价于
段落 内容
HTML标签可以添加属性,属性可以提供关于HTML元素的更多信息
-
书写位置:必须写在开始标签或者单标签之内,与标签名之间用空格进行分隔
-
属性包含:属性名(key)属性值(value)属性名与属性值之间的写法通常称做键值对写法,HTML标签属性的键值对写法是k=“v”。XHTML要求属性值必须在双引号内部
-
一个标签内可以设置多个不同的属性,属性与属性之间使用空格进行分隔,每个属性的键值对写法都是k=“v”
-
部分标签属性k可以设置多个属性值v,所有属性值v都必须卸载同一对双引号内,值与值之间需要使用空格分隔
=============================================================
-
为什么要用?
-
如果用普通的记事本打开一个HTML文件进行编程时,我们在编写HTML标签时需要写开始与结束这个过程需要耗费一些时间,假如我要完成一个比较大的项目时,会耽误我的工作进程
-
纯文本编辑器
-
所有纯文本编辑器都能编辑HTML文件。例如记事本、Editplus、notepad等。
-
专门制作网页的软件有
-
sublime
-
webStorm
-
HBuilder
-
Visual Studio Code
-
VS code
-
学习期间使用 VS Code软件,他是微软公司研发的一款非常方便使用的编辑器。
-
VS Code 拥有超级丰富的插件扩展,你可以根据自己的需求使用不同的插件,对于开发者来说更加友好。
-
插件扩展
| 插件名 | 作用 |
| — | — |
| Chinese (Simplified) Language Pack for Visual Studio Code | 使用中文界面 |
| Auto Rename Tag | 修改html标签,自动完成尾部闭合标签的同步修改 |
| open in browser | 右键设置在默认浏览器打开网页 |
| open in browser | 快速编写工具,已经集成在VS code中,可以不必安装 |
-
新建文件,ctrl + N
-
保存对应的文件格式 ctrl + S,例如.html、.css、.js等文件
-
使用对应的快捷键快速编写程序
| !或html:5 -> tab / ctrl + E | 自动生成基本骨架 |
| — | — |
| 标签名 -> tab | 自动生成标签 |
| 标签名*n -> tab | 自动生成n个相同的标签 |
| h$6 -> tab | 自动生成h1到h6的标签 |
| ctrl + shift + D | 复制光标所在行、复制所选内容 |
| ctrl + shift + K / ctrl + X | 删除光标所在行、所选内容 |
| ctrl + shift + ↑ | 将光标所在行上移一行 |
| ctrl + shift + ↓ | 将光标所在行下移一行 |
| 按住鼠标滚轮拖动 | 同时选中多个光标,同时操作 |
| ctrl + 滚轮 | 调整显示字号大小 |
| ctrl + Z | 无限后退一步 |
| ctrl + shift + D | 无限还原一步 |
==================================================================
- HTML文件最基本的四个标签组成了网页的基本骨架
网页的标题
网页的主体
- 标签 — 定义html文件的根元素,表示整个html文档,所有的标签要书写在标签内部
- 标签 — 用于存放
,,,</base></meta>
-
完整的HTML文件的第一行内容叫做文档定义类型,英文DocType Definition,简称DTD。也称为文档声明类型,DocType Declaration
-
作用:
-
告知浏览器该网页使用的时那个版本的HTML规范,让浏览器按照对应版本的HTML语法进行解析页面
-
不同版本的DTD
- 元素表示整个网页文档,在开始标签上设置了命名空间xmlns属性
-
xml:可扩展标记语言,使用在传输过程中的规范。被设计用来传输和存储数据,时html的补充
-
xmlns:全称叫做XML NameSpace, NameSpace叫做命名空间,浏览器会将此命名空间用于该属性所在元素内的所有内容
- 元素的命名空间规定了在不同用户的浏览器中标签语义遵循的统一标准,避免出现标签名冲突,这个标准使用的就是一个固定的网址`http://www.w3.org/1999/xhtml`中的规范
-
xml:lang="en"和lang=“en” 表示所有的标签元素内容的语言都是英语,对搜索引擎和浏览器是有帮助的
-
lang="zh-cn"表示中文
- 标签内部的标签通过http-equiv属性定义了当前的网页所使用的字符编码
-
char:character,字符。set:集合
-
XHTML1.0版本
-
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-
HTML5版本
-
<meta charset="UTF-8">
常用字符集编码
-
国际通用字库
-
UTF-8:以字节为单位对Unicode万国码进行编码,涵盖了所有人类的语言文字,一个汉字为三个字节大小。
-
中文国标字库
-
gb2312:共收入汉字6763个和包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个。
-
gbl:是gb2312的扩展,增加了繁体字,共收入21886个汉字和图形符号,其中汉字(包括部首和构件)21003个,图形符号883个,一个汉字为2个字节大小。
字符集常见问题
使用情况建议:
-
如果没有网页加载速度要求,或者制作的是外文网站,使用UTF-8
-
如果含有大量中文汉字的网站,而且要求网页加载速度很快,使用gbk
注意:如果meta标签声明的字库,必须和编译器软件默认编译字库相同,否则会出现两个字库不匹配,浏览器加载时出现乱码
==================================================================
-
在很多代码技术中都可以添加注释内容,我们也可以向HTML源码添加注释
-
HTML注释语法
-
<!-- 书写注释内容 -->
-
快捷键
-
ctrl + /
-
特点
-
注释只在源代码中可见,在浏览器窗口是不显示的
-
用途
-
在源代码中添加一些描述性的提示信息,便于我们阅读代码
-
对于HTML纠错也有很大的帮助,可以通过注视某一行HTML代码,以便检索错误的位置
-
暂时注释掉一部分不用的代码,以便于后期恢复代码
=======================================================================
-
标题(Heading)是通过
-
六个标签分别来对六个级别的标题进行定义的
-
定义最大的标题,
定义最小的标题
-
-
都是双标签,且都是容器级标签
标题标签之间是不能互相嵌套的,下一级标题与上一级标题之间通过同级关系书写,下一级标题解释说明的是前面距离最近的上一标题
一级标题
二级标题
二级标题
-
标题标签对于呈现文档结构非常重要,使用时要根据标签的重要程度进行选择,其中
标签最重要,
标签次重要,以此类推
-
在整个HTML中权重非常高,内部应该放置HTML中最重要的内容,比如logo
-
由于非常重要,内部的汉字对于提高搜索引擎排名也非常重要,为了防止作弊,如果一个页面出现多个
,反而降低权重。约定俗成的,一个页面中只会出现一个
==========================================================================
-
段落(paragraph)是通过
标签进行定义的
-
标签时双标签,且为文本级标签。内部只能放置文本、图片、表单元素,或者废弃的标签等
段落标签的作用
标签的作用是给标签内部的内容添加一个完整段落的语义,不负责内容自动换行的样式。
换行的效果是由CSS决定的
-
(breaking)标签时HTML中一个简单的换行符 -
标签是一个单标签 -
在需要换行的位置可以使用
标签书写,但是
与
不同,
没有建立新的段落的语义,只是简单的进行强制换行
每一对
标签内部的元素内容为一个完整的段落,如果有多个段落,需要分别适用不同的
标签进行定义
这是第一个段落
这是第二个段落
这是第三个段落
这是第一个段落
这是第二个段落
这是第三个段落
===============================================================
-
HTML中有部分标签是用来对文字进行格式化显示设置的,比如粗体和斜体等。
-
但是在HTML4.0版本规范后,结构和样式进行了分离,HTML只负责搭建结构,CSS负责格式化样式,所以大部分文本格式化标签被弃用,但是在HTML4.01和XHTML1.0transitional版本中依旧可以使用
文本格式化的标签均为双标签,且为文本及标签,内部只能书写文字
| 标签 | 描述 |
| — | — |
| b | 定义粗体文本,bold |
| i | 定义斜体字,italic |
| u | 定义下划线,不赞成使用,使用css中样式代替,underline |
=======================================================================
-
图像(image)由标签进行定义
-
标签是单标签,本身相当于一个特殊的文本
-
标签的作用是在指定的位置插入一张图片
-
在HTML文件中,常用的插入图片类型有:jpg、png、gif
由于标签为单标签,所以他只能通过属性进行相关的图像设置
常用属性展示:
| 属性名 | 描述 |
| — | — |
| src | 图片的路径 |
| width | 图片的宽度 |
| height | 图片的高度 |
| border | 边框属性;他的值可以设置边框的厚度 |
| title | 设置提示文本 |
| alt | 设置图像没找时的替换文本 |
-
src属性和路径
-
如果需要插入一张图片到HTML中,标签必须设置src属性
-
src:全称source资源,属性值时图片查找的路径
-
路径:指的是寻找文件时所经历的线路,在HTML中有特殊的书写语法
-
路径分为相对路径和绝对路径,不同的查找方式出发点和参考位置不同
=========================================================================
相对路径查找文件时,需要从HTML文件本身触发,根据相对的位置进行查找,包含三种方向
=========================================================================
绝对路径查找文件时,不需要从HTML文件触发,而是直接从电脑的盘符触发进行查找,或者实用网址形式查找
-
从盘符出发的绝对路径的缺点:
-
盘符出发的路径不可移植,不可移动
-
盘符出发的路径容易出现中文字符,中文的路径容易出现错误
-
建议多使用相对路径,可以适当使用网址形式的绝对路径
-
使用相对路径必须将图片或者文件与HTML文件同时上传,而且需要保持相对位置不变
===========================================================================
-
width:图片的宽度
-
height:图片的高度
-
属性值:以px为单位的数值,或者省略px不写
-
如果不设置两个属性,会以图片的原始尺寸加载
-
如果设置属性,只设置了其中一个,另一个会等比例变换,如果两个都设置,按照设置值加载
-
border:设置图片的边框
-
属性值:数值,数值是几表示边框宽度为几像素
- 注意:border属性可以使用css进行设置,css中的边框有更多的设置效果
-
title:设置的是鼠标悬停时的提示文本
-
属性值:自定义的提示文字内容
-
alt:设置的是图片查找错误时,出现的替换文本
-
如果能正常找到图片,替换文本是不显示的
-
属性值:自定义的替换内容
标签最为重要的属性为src,尽量使用alt属性对图片进行说明,添加相对关键词可以有利于SEO搜索引擎优化。其他属性可以根据需求进行设置
========================================================================
- 网页中的多媒体内容除了图片,还有音频、视频等,HTML也提供的特定的标签用于添加音频和视频
-
音频标签使用标签进行定义
-
是双标签
-
同图片一样,需要使用src属性设置音频查找的路径
-
音频文件支持的格式:.mp3、.ogg、.wav
// 仅仅找到资源,还未显示到页面
音频控制条属性
音频加载后不会自动显示播放器的控制条,需要使用controls属性进行设置,属性值也是controls
-
视频标签的设置方法与音频非常类似
-
使用标签进行定义
-
是双标签
-
使用src属性设置视频查找的路径
-
视频文件支持的格式包括:.mp4、.ogg、.webm
// 仅仅找到资源,还不能播放
视频控制条属性
视频也需要使用controls属性设置控制条,属性值也是controls
数据结构与算法
这一块在笔试、面试的代码题中考核较多,其中常考的数据结构主要有:数组、链表、队列、栈、Set、Map、哈希表等,不同数据结构有不同的方法以及储存原理,这些算是技术岗的必备知识。算法部分主要分为两大块,排序算法与一些其他算法题。
排序算法根据考频高低主要有:快速排序、归并排序、堆排序、冒泡排序、插入排序、选择排序、希尔排序、桶排序、基数排序、Timsort这十种,这类考核点要么是算法的时间、空间复杂度、稳定度,要么是直接手写代码,故在理解算法原理的同时,对JS语言版的排序算法代码也要加强记忆。
- 二叉树层序遍历
- B 树的特性,B 树和 B+树的区别
- 尾递归
- 如何写一个大数阶乘?递归的方法会出现什么问题?
- 把多维数组变成一维数组的方法
- 知道的排序算法 说一下冒泡快排的原理
- Heap 排序方法的原理?复杂度?
- 几种常见的排序算法,手写
- 数组的去重,尽可能写出多个方法
- 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
- 知道数据结构里面的常见的数据结构
- 找出数组中第 k 大的数组出现多少次,比如数组【1,2, 4,4,3,5】第二大的数字是 4,出现两次,所以返回 2
- 合并两个有序数组
- 给一个数,去一个已经排好序的数组中寻找这个数的位 置(通过快速查找,二分查找)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
多媒体内容除了图片,还有音频、视频等,HTML也提供的特定的标签用于添加音频和视频
-
音频标签使用标签进行定义
-
是双标签
-
同图片一样,需要使用src属性设置音频查找的路径
-
音频文件支持的格式:.mp3、.ogg、.wav
// 仅仅找到资源,还未显示到页面
音频控制条属性
音频加载后不会自动显示播放器的控制条,需要使用controls属性进行设置,属性值也是controls
-
视频标签的设置方法与音频非常类似
-
使用标签进行定义
-
是双标签
-
使用src属性设置视频查找的路径
-
视频文件支持的格式包括:.mp4、.ogg、.webm
// 仅仅找到资源,还不能播放
视频控制条属性
视频也需要使用controls属性设置控制条,属性值也是controls
数据结构与算法
这一块在笔试、面试的代码题中考核较多,其中常考的数据结构主要有:数组、链表、队列、栈、Set、Map、哈希表等,不同数据结构有不同的方法以及储存原理,这些算是技术岗的必备知识。算法部分主要分为两大块,排序算法与一些其他算法题。
排序算法根据考频高低主要有:快速排序、归并排序、堆排序、冒泡排序、插入排序、选择排序、希尔排序、桶排序、基数排序、Timsort这十种,这类考核点要么是算法的时间、空间复杂度、稳定度,要么是直接手写代码,故在理解算法原理的同时,对JS语言版的排序算法代码也要加强记忆。
- 二叉树层序遍历
- B 树的特性,B 树和 B+树的区别
- 尾递归
- 如何写一个大数阶乘?递归的方法会出现什么问题?
- 把多维数组变成一维数组的方法
- 知道的排序算法 说一下冒泡快排的原理
- Heap 排序方法的原理?复杂度?
- 几种常见的排序算法,手写
- 数组的去重,尽可能写出多个方法
- 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
- 知道数据结构里面的常见的数据结构
- 找出数组中第 k 大的数组出现多少次,比如数组【1,2, 4,4,3,5】第二大的数字是 4,出现两次,所以返回 2
- 合并两个有序数组
- 给一个数,去一个已经排好序的数组中寻找这个数的位 置(通过快速查找,二分查找)
[外链图片转存中…(img-0VmUjwnb-1713470569100)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-DW9uLMXx-1713470569100)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!