我有一个构建过程,将LESS代码编译成CSS,然后将其注入到JavaScript字符串文本中,并与主要的缩小.js代码连接。然后,主代码将CSS字符串注入页面。
这样做的一个优点是只需要一个HTTP请求即可启动并运行样式和脚本。
但是,这样做是否有任何警告?
修改
很多人认为我正在制作宣传册型网站。实际上,我正在开发一个单页的Web应用程序。因此,如果禁用JavaScript,应用程序将完全无用。但是从可用性的角度来看,如果某些样式可以告诉那些使用已禁用的JavaScript的人需要使用JS来运行应用程序,那么它可能是最好的。
修改2
我在Backbone.js中构建了一个Web应用程序。而且,我有多个观点。通过脚本标签加载它们是一个糟糕的主意。此外,依赖管理将是可怕的。因此,我使用RequireJS来帮助我处理所有依赖项。
但RequireJS也有这个整洁的小插件,可以加载你可以在你的应用程序中使用的纯文本文件。
因此,我鼓励每个视图在自己的LESS文件中都有自己的风格。
答案 0 :(得分:3)
答案 1 :(得分:2)
如果您在css插入代码之前以某种方式获得js错误,则您的页面可能根本不会获得任何样式。
答案 2 :(得分:2)
如果你正确地编写CSS,那么访问者在整个站点的整个持续时间内只会有1个HTTP请求。为您提供确保缓存。如果有任何优势的话,你的优势并不是非常重要的。
JavaScript不仅可以被用户禁用,而且有时也可以被公司防火墙阻止,具体取决于其中的指令类型或服务位置的启发式方法。例如。 某些的JavaScript文件可能会运行,而其他一些可能不会运行。这种情况经常发生在我的工作中。
答案 3 :(得分:1)
这对于性能来说太糟糕了,不应该在生产代码中使用。
答案 4 :(得分:1)
由于可以在客户端覆盖CSS,因此我认为在客户端生成CSS没有任何问题。
答案 5 :(得分:0)
FOUC(无格式内容的Flash)。