Often advice is given that CSS should be included before JavaScript in the
of a web page. This is supported by the reasoning that the rendering thread will have all the style information it needs to render the page, and the JavaScript engine will have to parse all included JavaScript before continuing, resulting in a delay in page rendering.However, practical testing shows a different result. The JavaScript interpreter appears to wait until all CSS is downloaded before starting, meaning that including JavaScript first can lead to a more efficient use of the JavaScript thread's time.
To explore this further, let's look at specific examples. Consider the following page structure:
<!DOCTYPE html> <html> <head> <title>test</title> <script type='text/javascript'> var startTime = new Date(); </script> <link href="http://10.0.0.50:8081/test.css?delay=500" type="text/css" rel="stylesheet"> <script type="text/javascript" src="http://10.0.0.50:8081/test2.js?delay=400&jsdelay=1000"></script> </head> <body> <p> Elapsed time is: <script type='text/javascript'> document.write(new Date() - startTime); </script> </p> </body> </html>
When the CSS is included first, the page takes 1.5 seconds to render. When the JavaScript is included first, the page takes 1.4 seconds to render. This experiment demonstrates that prioritizing JavaScript can lead to faster page rendering.
Based on practical testing, the recommendation to place CSS includes before JavaScript includes may not be optimal for performance in modern browsers. Including JavaScript first appears to improve efficiency by providing more time for the JavaScript thread to operate. It is important to note that this is specific to the context of essential JavaScript and CSS inclusions in the
of the document.The above is the detailed content of Should JavaScript Precede CSS for Optimal Web Page Rendering Performance?. For more information, please follow other related articles on the PHP Chinese website!