2018年BAT前端必考面试题全解析:doctype、元素类型与浏览器内核

需积分: 10 0 下载量 83 浏览量 更新于2024-09-07 收藏 31KB DOCX 举报
前端必考面试是2018年各大互联网公司如BAT(百度、阿里巴巴、腾讯)面试中常出现的热门话题,涵盖了一系列核心知识点。以下是部分重要问题及其详细解答: 1. **Doctype的作用与区别**: Doctype是文档类型声明,用于告诉浏览器当前文档遵循哪种HTML版本规范。它在文档开头,对浏览器提供指导,确保正确解析文档模式。严格模式(quirks mode)和混合模式(quirks-like mode)是两种解析模式: - 严格模式:浏览器按照该浏览器支持的最高标准执行,通常提供最佳性能和现代浏览器特性的支持。 - 混合模式:旧式浏览器使用此模式,以向后兼容的方式解析文档,可能导致布局问题,因为其不严格遵循W3C规范。 2. **元素分类**: CSS通过`display`属性来区分行内元素(如`<span>`、`<a>`、`<img>`等)和块级元素(如`<div>`、`<ul>`、`<li>`等)。行内元素默认占据一行,而块级元素可以独占一行,并且可以设置宽高。 3. **link和@import的区别**: - `link`是HTML标签,用于引入外部CSS文件,会在文档加载时同步下载并应用样式。 - `@import`是CSS语法,但需注意IE5及以下版本不支持。它延迟加载CSS直到文档完全加载,这意味着`link`方式的样式优先级更高。 4. **浏览器内核**: - Internet Explorer使用的是Trident内核,而Mozilla的Gecko内核主要支持Firefox。 - Chrome和部分基于WebKit的浏览器(如Safari)使用Blink内核,而Opera曾用Presto,后来也转向了Blink。 5. **HTML5的新特性与兼容性**: HTML5带来了许多新特性,如Canvas用于图形渲染,video和audio元素支持媒体播放,以及本地存储(localStorage和sessionStorage)以实现离线数据存储。此外,它还引入了语义化标签(如`<article>`、`<footer>`等),增强了表单控件(如`<input type="email">`),以及新的API如Web Workers用于异步计算。 处理HTML5新标签的兼容性问题,通常使用条件注释或polyfills(向后兼容代码),确保在不支持这些新特性的旧浏览器中提供备用行为。区分HTML和HTML5的关键在于HTML5文档的`<!DOCTYPE html>`声明,这是HTML5文档特有的。 了解这些知识点对于准备前端面试至关重要,因为它涉及基础语法、浏览器解析机制以及现代Web开发的最佳实践。掌握这些内容能够帮助求职者在实际工作中高效地开发和维护前端项目,适应不断发展的技术趋势。