余晖落尽暮晚霞,黄昏迟暮远山寻
本站
当前位置:网站首页 > 编程知识 > 正文

web前端学习怎么入门(web前端入门教程)

xiyangw 2022-11-25 12:26 72 浏览 0 评论

web前端怎么样才能入门,首先我们要从什么是初级web前端工程师说起:

按照我的想法,我把前端工程师分为了入门、初级、中级、高级这四个级别,

入门级别指的是了解什么是前端(前端到底是什么其实很多人还是不清楚的),了解基本的html、css和javascript语法(这些语方面的东西网上随便搜一下就有很多很多,基本的语法是整个技术体系最重要 的东西了,领先的 Web 技术教程 ),可以根据设计师的设计图在不考虑兼容性的情况下把页面做出来,了解过一些框架的使用(例如烂大街但是依然牛逼的jQuery、zepto、 bootstrap等等)。

在经历过入门的阶段,已经了解了前端要做什么,并且把基本的语法学习过了可以独立做一些简单的页面了,那么就要继续学习达到初级前端工程师的水平,对于初级的前端工程师需要了解的就特别多了,需要对整个前端有一个清晰的认识,并且熟练使用各种技术。

初级前端工程师:首先要知道的就是如何处理各种浏览器的兼容处理(比如说在IE浏览器中的createElement有什么不同等等内容),现在基本上每个公司在招聘的时候都会要求熟练html5, css3, javascript,这个熟练的意思就是信手拈来。

在下面会说初级前端工程师应该具体的学习哪些知识,然后就是要了解各种css的预处理器和后处理器, 还有会使用常见前端的MV*框架(angularjs, backbone,reactjs等等)并知道这些框架的原理,另外就是要熟练使用nodejs,要会使用基于node的各种前端构建工具 (grunt,gulp等等),熟练使用github或gitlab,对模块化、组件化、工程化、语义化有一个比较深入的了解,最后要知道如何开发移动端 的页面,如何去优化一个页面的性能。

初级web前端工程师的技术体系

1.HTML部分

首先是要掌握一些常用标签的使用和他们的各个属性,这些常用的标签我总结了一下有以下这些:

html:页面的根元素。head:页面的头部标签,是所有头部元素的容器。body:页面的主体标签,页面展现的内容就放置在这里面。title:页面的标题。meta:位于文档的头部,提供页面的元信息,包括关键字、描述等等。link:定义文档与外部资源的关系,最常用的用途就是引入样式表。script:脚本标签,可以把js脚本代码放置在这个标签内,也可以使用这个标签的src属性引入一个外部标签。style:样式标签,可以把css代码写在这个标签中。

a:超链接,href属性代表要链接到的地方,target属性代表打开方式。img:图像标签,src属性表示图片的位置。form:表单元素,它内部的input、select、textarea等标签都是比较重要的。div:定义文档中的分区或节,可以使用div来进行页面的布局等操作。另外还有ul、li、p、button、iframe、p、table等标签也很常用,nav、section、article、header、aside、footer等语义化标签也需要了解一下。

除了要了解上面这一些标签之外,还需要对一些新的HTML5的API有一定的了解:

audio、video标签。

Canvas:定义图形,比如图表和其他图像。

input标签的accept属性,email、phone、url等类型。

getElementByClassName根据class名来获取一个元素结点。

Multiple file selection多文件选择属性。

html的import、template

process标签,webGL等内容。

还有一些要知道的知识点:

1.doctype的作用。2.unicode、utf8等编码的原理和区别。3.如何进行页面性能优化。4.png、jpg、webp、gif等图片格式的不同的优势。5.HTML行内元素与块级元素的区别。6.移动web端开发常用head标签。7.web语义化。8.浏览器中的缓存原理。

2.CSS部分

关于css这一块,我的看法就是网上下载一个chm格式的css的参考手册,然后根据手册里面写的一个个的都敲一下。

css大体分为下面这几块知识点:

① 定位布局

1.position属性的7个值(static | relative | absolute | fixed | center | page | sticky)分别有什么作用和不同?

2.实现品字形布局或者是三栏布局(左右宽度固定,中间适应屏幕)。

3.浮动与清除浮动的方法,flex布局,grid布局。

② 盒子模型

1.margin、padding、border这三个属性。

2.伸缩盒相关内容。

3.Multi-column Layout Module多列布局模型。

③ 文本字体

1.强制换行与不换行,清除空白。

2.文本对齐、大小(如何设置chrome小于12px的字体)、缩进、转换。

3.单位(em、rem、px等),颜色(rgb、rgba,hls)。

④ 变换、过渡和动画

1.transform的各种取值的作用与兼容性。

2.transition过渡的动画类型,贝塞尔曲线的原理。

3.animation动画的各种设置,@keyframes规则。

4.浏览器的重绘与重排。

⑤ 选择器

1.选择器的分类,权值和优先级。

2.有哪些属性可以被继承,哪些属性没法继承。

3.伪类和伪元素分别是什么,有什么作用。

上面这些都是基础的东西,除了这些基础的内容之外需要了解Less、Sass、stylus等css预处理器,这将会大幅度提升你的css开发效率,也需要了解一下Autoprefixer、PostCSS等css后处理器。

3.JavaScript部分

在这里就不说js的基础知识了,我把js按照语法的层次和使用的层次分为了两大块。

按照语法的层次来说:

首先是javascript的面向对象方面的内容:在javascript中实现封装、继承和多态。

① 封装:在js中可以通过闭包、作用域和作用域链来实现封装,ES6的const、let的作用。

② 继承:基于原型链的继承、基于构造函数的继承、组合式继承、寄生式继承等,外加ES6的class关键字,prototype和__proto__。

③ 多态:在javascript中多态是使用arguments来实现的,关于arguments会引申出来很多内容:

1.arguments的caller、callee等方法的作用。

2.方法的apply和call的作用和不同。

3.使用Array.prototype.slice.call来把一个数组对象转化为数组。

4.array的各种方法,如shift、splice、push、filter、map、reduce、forEach等等。

然后是Js的设计模式,比如说那三种工厂模式啊,建造者模式啊等等。

最后是在不同情况下的this分别都代表什么。

按照使用的层次来说:

首先最主要的就是ajax,ajax的原理,ajax跨域的方法:jsonp、使用iframe的location.hash、postMessageAPI、websocket、服务器代理等等。

然后是tcp协议、udt协议以及http协议的协议头、状态码等内容。浏览器的缓存,客户端存储方面的内容:localstorage、sessionstorage、indexDB、cookie等等。

最后是一些新的js的API,例如文件读取(fileReader)、fetch、Promise、Web Sockets等等内容,可以去caniuse上面看一下有哪些新的东西。

上面我所说的这些只是一些比较笼统的概念,把前端html、css和javascript所需要掌握的部分内容列举了一下,在前端领域还有很多需要我们知道的知识,这需要大家在学习工作的过程中去自己总结。

相关推荐

Mac软件删除方法,这样删除不会有残留
Mac软件删除方法,这样删除不会有残留

Mac电脑如果有太多无用的应用程序,很有可能会拖垮Mac系统的运行速度。因此,卸载电脑中无用的软件是优化Mac系统运行速度的最佳方式之一。Mac卸载应用程序的方...

2023-09-23 17:34 xiyangw

安利一款 Mac 的清理工具 Cleaner One
安利一款 Mac 的清理工具 Cleaner One

自从入手mac以后,一直在找款mac的清理工具之前也尝试过CleanMyMac和柠檬清理柠檬清理是腾讯旗下的,虽然免费,但更新不频繁,最近一次更新还...

2023-09-23 17:33 xiyangw

苹果电脑需要安装杀毒软件吗?一文告诉你
苹果电脑需要安装杀毒软件吗?一文告诉你

随着数字时代的发展,计算机安全问题变得越来越重要。而在计算机安全领域中,杀毒软件是一个被广泛讨论的话题。苹果电脑需要安装杀毒软件吗?对于苹果电脑用户来说,他们常...

2023-09-23 17:30 xiyangw

mac上实用的工具

mac系统上有很多好用的工作,本期给大家带来一些本人长期使用的软件,特别是刚从windows系统的pc转移到macbook上的小伙伴,可能有一定的帮助。1.Alfred可以完全取代苹果自带Spotl...

Mac专用免费清理软件CleanMyMac
Mac专用免费清理软件CleanMyMac

在Mac中,越来越多的垃圾占用了磁盘空间怎么办?直接拖拽到废纸篓很多软件不能完全卸载干净怎么办……伴随着这些问题,如果有一款多功能的软件能够解决以上的全部难题就...

2023-09-23 17:29 xiyangw

MAC软件分享CleanMyMac中文版 支持最新版系统
MAC软件分享CleanMyMac中文版 支持最新版系统

CleanMyMac的强大不需要过多的去介绍,软件支持最新版Macos10.15.6系统。CleanMyMac具有非常强大的功能,可让您安全,智能地扫描和清理...

2023-09-23 17:28 xiyangw

安装CleanMyMac 3提示软件已损坏
安装CleanMyMac 3提示软件已损坏

安装CleanMyMac3提示软件已损坏,出现这样的原因是往往是使用了CleanMyMac3破解版,主要是因为CleanMyMac3的来源问题,我们的正版软件(...

2023-09-23 17:27 xiyangw

苹果Mac中使用 CleanMyMac X 清理垃圾时频繁要求输入密码如何解决?
苹果Mac中使用 CleanMyMac X 清理垃圾时频繁要求输入密码如何解决?

有不少用户反映在使用CleanMyMac清理系统垃圾文件的时候会频繁要求输入开机密码,如何解决这个问题?来看看吧!解决方法:1.打开「终端」,并输入以下命令...

2023-09-23 17:27 xiyangw

MacBook清理垃圾软件哪个好
MacBook清理垃圾软件哪个好

很多时候手动清理mac效果并没有那么好,常常会有疏忽的地方,其实我们完全可以依赖一些mac清理垃圾软件。windows上我们会借助360安全卫士、腾讯安全管家等...

2023-09-23 17:26 xiyangw

全球真的只有13台DNS根域名服务器吗?
全球真的只有13台DNS根域名服务器吗?

DNS根域名服务器(DNSrootnameservers)是一组特殊的DNS服务器,它们存储有关Internet域名系统(DNS)中所有顶级域的信息。这些...

2023-09-23 17:25 xiyangw

网络管理员,网络工程师每日一练

在DNS服务器中的()资源记录定义了区域的邮件服务器及其优先级。A.SOAB.NSC.PTRD.MX试题答案:D...

Android性能优化之网络优化DNS和HttpDNS知识详解
Android性能优化之网络优化DNS和HttpDNS知识详解

前言小计在App访问网络的时候,DNS解析是网络请求的第一步,默认我们使用运营商的LocalDNS服务。有数据统计,在这一块3G网络下,耗时在2...

2023-09-23 17:25 xiyangw

如何修改域名DNS服务器?修改DNS服务器常见问题汇总
如何修改域名DNS服务器?修改DNS服务器常见问题汇总

在域名管理过程中,我们为了获得更专业安全的域名解析服务,就需要修改DNS服务器,下面中科三方针对修改DNS服务器常见问题做下简单回答。1.修改DNS服务器和修改...

2023-09-23 17:24 xiyangw

netty系列之:在netty中使用 tls 协议请求 DNS 服务器

简介在前面的文章中我们讲过了如何在netty中构造客户端分别使用tcp和udp协议向DNS服务器请求消息。在请求的过程中并没有进行消息的加密,所以这种请求是不安全的。那么有同学会问了,就是请求解析一个...

「GCTT 出品」使用 Golang 构建 DNS 服务器
「GCTT 出品」使用 Golang 构建 DNS 服务器

需求:对DNS查询进行转发和缓存的本地DNS服务器。补充1:提供一个记录管理的接口(HTTPhandler)。补充2:提供一个名字(name)。D...

2023-09-23 17:23 xiyangw

取消回复欢迎 发表评论: