注:带* 部分均为个人思考、分析及补充的原创部分。
01前端工作的定义
什么是前端?1.解决GUI(图形用户界面)人机交互问题;2.跨终端(PC/移动浏览器、客户端/小程序、VR/AR等);3.Web技术栈(html+css+js+http协议)
一句话总结,前端工程师是利用Web技术栈解决多端用户图形交互问题的工程师。
***** 现有的框架技术等新发展的前端技术也是基于最基础的web 三剑客衍生发展起来的,前端并不只是解决网站的问题,我们常见的小程序、客户端等等也都属于前端的工作范围。
02 前端技术栈
1. HTML(内容):最基础的,负责页面的结构还有内容。
2. CSS(样式):设置页面的样式,如大小、颜色。
3. JavaScript(行为):设置页面的行为,如点击按钮后网页响应的行为。
4. 以上三剑客都是运行在浏览器中,可以通过网络协议和服务器端进行通信。
*在定义上来说,还是把HTML+CSS+JS三剑客定义为前端,但前端的工作范围是不仅于此的。
03 前端应该关注的方面
功能、美观、无障碍(对于有残疾或疾病等人群是否能正常使用)、安全(保护用户数据的安全等等)、性能(用户体验等等)、兼容。
*前端对于用户体验来说是非常重要的,我们想要做出好的产品,是需要深入学习的。
04 前端的边界
现在已经可以使用node去开发服务端的一些应用,用electron去开发客户端的一些应用。
前端的发展是非常快的,需要持续学习才能跟的上技术的进步。
05 HTML作用解析
HTML是超文本标记语言,超文本不局限于文字,还包括图片、链接、表格等。
DOM树:把HTML代码转换成树形结构,每一个HTML标签转换为一个DOM结点。
*我们在调试时,可以通过DOM树更加方便地进行调试。
HTML语法:
-
l 标签和属性不区分大小写,推荐小写
-
l 空标签可以不闭合,比如input、meta
-
l 属性值推荐用双引号包裹
-
l 某些属性值可以省略,比如required、readonly
标题h1-h6
列表:ol(有序列表)、 ul(无序列表)、dl(dt表头、dd表单项)
链接:a(最重要的属性href、target=’_blank’新标签打开)
多媒体:img/audio/video
输入:input(placeholder:占位)
文字类:blockquote(块级引用、长引用)、cite(短引用)、q(之前已经引用过、短引用)、code(代码类)、strong(强调、重要)、em(强调、语气上的强调)
*主要是复习了一下列表和表单类的标签、以及新学习了很多文字类的标签。
06 HTML语义化
HTML中的元素、属性及属性值都拥有某些含义。开发者应该遵循语义来编写HTML。
我们需要考虑谁在使用我们写的HTML,开发者(修改、维护页面)、浏览器(展示页面)、搜索引擎(提取关键词、排序)、屏幕阅读器(给盲人去读页面内容)。
*无障碍性是我在学习过程中提到非常重要的一个理念,我之前设计网站时都是在舒适的情况下去考虑,没有考虑在不同环境下不同人群的使用体验感。
语义化的好处(代码可读性、可维护性、搜索引擎优化、提高无障碍性)
传达内容而不是传达样式。
*总结来说,还是要多多学习官方文档,多多考虑不同内容应该使用什么样的标签,减少对可视化平台的依赖。