我们打开的页面(Web页面)在各种不同的浏览器中运行,浏览器载入、渲染页面的速度直接影响着用户体验,简单地说下页面渲染,页面渲染就是浏览器将html代码根据CSS定义的规则显示在浏览器窗口中的这个过程。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>标题</title>
<link href="../css/css.css" rel="Stylesheet" type="text/css" />
</head>
<body>
<div>
</div>
<img src="images/test.jpg" alt="示例图片" />
<br />
<p>
</p>
</body>
<script type="text/javascript" src="js/js.js"></script>
</html>
<link href="../css/css.css" rel="Stylesheet" type="text/css" />
3.这时客户端浏览器又向服务器发出一个请求加载css.css文件,服务器响应。
<script type="text/javascript" src="js/js.js"></script>
对于这种来回渲染,内行叫为reflow,reflow几乎是无法避免的,我们不能因为怕会重新渲染而去丢掉一些页面效果。但是reflow是可以优化的,比如图片在css.css样式文件中就定义好图片的高度,这要会减少重新渲染的次数。另外还有一次词叫repaint,叫重绘,repaint如果只是改变如背景颜色或者文字的颜色,repaint的速度要比reflow的速度明显快的多。