我正在用JS框架构建webpapp(基于ReactJS的InfernoJS)。加载CSS和性能
我想知道加载只有有用的CSS有多重要。 在JS Framework网站(包含angularjs,Reactjs ...)中,您的所有加载的路由都有CSS,但取决于您的页面,您可能只需要网页上20%的CSS规则。
例如: 您对ComponentA有'/ about',对于JS Framework网站,您将在'/ home'页面上为ComponentA加载CSS,但在这种情况下,CSS无关紧要。
我不知道如果开发代码只加载组件显示的CSS将真的提高我的表现espcially为搜索引擎优化。
浏览器如何处理未使用的CSS? 它是否加载到内存中,等待查找可应用的元素? 每个浏览器都一样吗?
编辑: @Psi部分回答它。我将重新制定它以使其更易于理解。
在JS框架基础上,你的页面被分割成不同的组件,大多数时候,你将有一个组件Header,Body,Footer。
所以如果我走在'/ home'和'/ about'路径上,组件的Header和Footer应该是相同的,但Body组件将会改变。 因此,为了优化,我正在考虑每次加载页眉和页脚组件的CSS。但是,加载的CSS应该根据路由而改变,如果我改变路由(页面不重载,它由JS处理),另一个Body组件将被加载,但是我将拥有CSS的Body元素先例路线。事实上,一般来说,您的网站的每条路线都具有CSS的全部正文组件。
所以你有很多未使用的CSS规则。所以,通过添加和删除<link>
来改变加载的CSS应该是有趣的,否则我可能会花费太多的精力来完成它,浏览器对它有足够的优化?
我已经更新了这个问题。感谢清除我的一些关注 – jadok
我编辑了我的答案 – Psi
我不明白服务器端和客户端部分。对于使用Angular或React的JavaScript WebbApp,我只处理客户端部分。所以你的CSS文件的管理在我的客户端完成。 – jadok