# HTML 面试题

# DOCTYPE 的作用是什么

DOCTYPE 是 html 标准网页声明,且必须声明在HTML文档的第一行来告知浏览器的解析器用什么文档标准解析这个文档。

# HTML、XHTML、XML有什么区别

HTML: 网页的基本描述语言 XML:主要用于存储数据和结构,其作用现已被JSON替代 XHTML:

# HTML 语义化的理解

使用恰当语义的标签让页面具有良好的结构与含义。

语义化的好处主要有两点:

  • 开发者友好:使用语义类标签增强了代码的可读性
  • 机器友好:带有语义的文字表现力更丰富,更适合爬虫爬取有效信息,支持语音阅读
  • 无障碍友好:更方便无障碍工具分析页面,提升无障碍体验。

# 有哪些常用的 meta 标签

<!-- 指定文档编码 -->
<meta chartset="UTF-8">
<!-- 相当于HTTP Header -->
<meta http-equiv="expires" content="Wed, 20 Jun 2019 22:12:00 GMT">
<!-- 视口控制 -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<!--PWA相关  -->
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">

# src 和 href 的区别

# img 的 srcset 的作用

用于设计响应式的图片

  • srcset 定义了我们允许浏览器选择的图像集
  • sizes 定义了一组媒体条件

# script 标签中 defer 和 async 的区别

  • defer 异步加载脚本,该脚本在文档解析后后执行
  • async 异步加载脚本,当该脚本加载完成时立即执行,会打断文档的解析

# 前端数据持久化的方式

  • cookie
  • sessionStorage
  • localStorage
  • IndexedDB
  • Web SQL