用自己的话说有趣的知识。大家好,我是梅巴哥er。上篇 对前端经典问题进行了总结。 本篇,我们来总结一下前端的知识,做个归纳。
全篇分为若干的版块,如
- html版块,
- css版块,
- js版块,
- es版块,
- react等框架版块(我用的是react,主要介绍react),
- webpack等打包工具的版块,后端node版块,
- 封装接口ajax版块,
- 实操场景问题的处理
- 其他
其中css占比较大,其次是js和es的知识,都比较琐碎。框架和后端的知识占比少,但是一般都是大知识点,系统性问题。
本篇来看看HTML版块
常用的学习网站:
知识归纳:
-
谈谈HTML的兼容性:
- 为啥会出现兼容性的问题嘞?
- 因为市面上有不同的浏览器,各家浏览器支持的属性会有不同。
- 兼容性有两种大的方面
- 一是各家通过前缀来支持属性。如:
- -moz- 代表firefox浏览器私有属性
- -ms- 代表IE浏览器私有属性
- -webkit- 代表chrome,safari私有属性
- -o- 代表opera私有属性
- 二是属性在某个浏览器中会出现bug或不支持的情况。参考博文:html一般会有哪些兼容性问题,怎么解决
-
新特性:(你知道哪些?用过哪些?)
- 用于绘画的 canvas 元素
- 用于媒介回放的 video 和 audio 元素
- 对本地离线存储的更好的支持
- 新的特殊内容元素,比如 article、footer、header、nav、section
- 新的表单控件,比如 calendar、date、time、email、url、search
-
Doctype的作用是什么?严格模式与混杂模式如何区分?它们有何意义?
- Doctype写在HTML文档的最前面,用来告诉浏览器用哪种方式渲染页面。
- 渲染页面的方式有两种,严格模式和混杂模式。
- 严格模式就是浏览器支持的最高标准渲染。
- 混杂模式,向后兼容,模拟老式浏览器,防止浏览器无法兼容页面
-
对HTML语义化标签的理解
- 语义化,就是标签语言直接表达意思,看到标签名就知道这个标签是用来干嘛的。比如nav就是导航条。
- 语义化标签意思明了,更好理解,结构良好,类似的还有article、header、footer等等标签
-
link标签和import标签的区别
- 归属不同:link属于html标签,而@import是css提供的
- 加载时间不同:页面被加载时,link会同时被加载,而@import引用的css会等到页面加载结束后加载
- 兼容性不同:link是html标签,因此没有兼容性,而@import只有IE5以上才能识别
- 权重不同:link方式样式的权重高于@import的
-
讲一下块元素和行元素,行内块元素
- 块元素:独占一行,可以设置宽高
- 行元素:不会独占一行,宽高失效,并且在垂直方向的padding和margin会失
- 行内块元素:不会独占一行,可以设置宽高。