一、首先说一下浏览器解析html文档的原理
当浏览器解析HTML文档时,创建了一个用来代表页面元素的集合,叫做DOM(文档对象模型,Document Object Model)树状结构,每一个节点代表一个元素。<html>
就是顶层节点(根节点),在下面的是它的子节点<head>
和<body>
,再往下就是它们的子节点,还有后代节点,如此类推。根节点是文档里所有其他元素的祖先。它有一个特别的伪类(pseudo-class)选择器(:root),在样式表里可以用这个选择器表示。使用带类名的类型选择器html,或者直接用标签选择器,效果是一样的。
二、再说一下em和rem的区别
rem是根em(root em)的缩写。rem是和根元素关联的,不依赖当前元素。不管你在文档中的什么地方使用这个单位,1.2rem的计算值是相等的,等于1.2倍的根元素的字号大小。下面的示例代码中,声明了根元素的字号大小,并在嵌套的无序列表中使用rem声明字号大小。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF