html和css是并行被解析的,html和css被解析时分别会形成domTree和cssTree
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> </style> </head> <body> <div> <span></span> <strong></strong> </div> <script> </script> </body> </html>
会形成一个树解析起来
然后css的树和html的树拼起来成渲染树 renderTree 树遵循深度优先规则
所以写代码是一般将js代码写在后面,当前面的内容解析完时,正好执行js代码,效率更高