HTML 加载CSS文件和javascript的思考

来源:互联网 发布:儿童学画画软件 编辑:程序博客网 时间:2024/05/20 05:07
起因:工作过程中有时候会看网上别人写的一些优秀代码,发现自身的不足。随产生了一些思考,记下了以下一些知识片段。


浏览器在迅速发展,一些总结、资料很难与时俱进。大家应该多测试,多发现,这样得来的知识,才不会过时。
我的这些记录,也肯定在未来甚至就在现在,已经存在错误。


1、浏览器显示页面的过程:先是DNS解析,然后建立TCP连接,接着下载HTML内容以及资源文件,最后才是整个页面的渲染。


2、html加载是按顺序加载


3、js文件是在head和body标签内,所以head里面的先加载了下来。如果你的js文件或者css文件很大,或者出问题,这时候就会出现阻塞问题。(阻塞问题后面会提到)
关于引入位置,css建议在head标签引入。js文件在body标签底部引入。


4、head标签里面的js,调用的时候才执行,body标签里面的js会在加载到的时候执行。


5、function test(){} 的方式定义函数,浏览器会优先解析。var test = function(){}的方式和普通变量一样,没有优先解释权。
function语句式定义的函数,在函数前边调用也可以,但是注意,调用与定义要在同一个script代码块中,否则不行。


6、 js、css独立文件的多少会影响请求次数。这个可以看看淘宝腾讯的处理方式。


7、浏览器prefetch ,就是预加载。现在的浏览器非常强悍,更新也非常的迅速。前面提到的阻塞,文件大等情况,浏览器做了很多优化处理。


8、js\css\html 是会存在相互影响的,看浏览器怎么解析


9、一切的根本都是浏览器,所以进阶的目标是了解浏览器源码


最后贴一个别人的html代码,出处我找不到了,我的习惯一般是先在本机用文档做记录。以下为引用...

<!DOCTYPE html><html>  <head>     <!--网页页面字符集-->    <meta charset="utf-8">     <!--让IE使用最新的渲染模式-->    <meta http-equiv="X-UA-Compatible" content="IE=edge">     <!--针对移动设备,网站显示宽度等于设备屏幕显示宽度,内容缩放比例为1:1-->    <meta name="viewport" content="width=device-width, initial-scale=1">     <!--将下面的 <meta> 标签加入到页面中,可以让部分国产浏览器默认采用高速模式渲染页面:-->    <meta name="renderer" content="webkit">    <!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->      <title>Bootstrap Basic Template</title>    <!-- Bootstrap -->    <link href="css/bootstrap.min.css" rel="stylesheet">    <!--下面这一大块的注释是说:"为了让IE9以下的浏览器支持响应式和HTML5标签.需要引入下面两个JS文件"-->    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->    <!--[if lt IE 9]>      <script src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>      <script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>    <![endif]-->  </head>  <body>     <!-- 英:jQuery (necessary for Bootstrap's JavaScript plugins) -->    <!--中:必须在JS文件引入之前引入JQ文件,这里src引用的是本地.线上建议使用CDN引用)    <script src="js/jquery-2.1.3.min.js"></script>     <!-- Include all compiled plugins (below), or include individual files as needed -->    <script src="js/bootstrap.min.js"></script>  </body></html>




0 0
原创粉丝点击