我应该内联CSS& JS在移动网站中节省带宽?

时间:2012-01-04 18:39:56

标签: javascript html css

有没有理由不内联CSS&当我创建一个仅限移动设备的网站时,JS可以节省带宽吗?

4 个答案:

答案 0 :(得分:8)

我能想到的唯一的可能的好处是少了几个HTTP请求,但如果你这样做,你完全放弃了缓存文件的好处。

缓存是一件好事,它可以节省带宽,所以我不明白为什么你想要失去这种优势。

除此之外(与性能无关),维护将是所有内联的噩梦,就像任何网站一样。

如果有更令人信服的理由不这样做,我不会感到有点惊讶。

使用单独的文件。

答案 1 :(得分:3)

是。首先,您要么必须像这样编码,要么动态内联它们。动态地=浪费处理能力。像这样的代码=难以维护和不良做法。为了什么?你根本不需要保存任何带宽,这使缓存变得不可能,实际上可能会减慢你的速度。现在缩小,另一方面......那就是你应该做的事情。缩小你的CSS和JavaScript,将它们合并到一个文件中,如果你动态地这样做是可以的,因为好处大于问题。

答案 2 :(得分:2)

内嵌一切都有不同的效果:

  • 减少请求数量 - 但会增加HTML文件大小
  • 增加的HTML文件大小 - 加载时间显着增加
  • 没有缓存 - 你失去了一个好机会
  • 维护就像地狱一样 - 除非你将内联作为开发过程的一个步骤

您可以阅读的好文章 - Why inlining everything is not the answer 在那里,他建议只内联非常小的文件(小于1KB)

嘿顺便说一句,为什么不内联 - 谷歌在他们的主页上做到了。任何拥有“View-ed Source”Google的人都会看到它。但仍然是你的选择。
如果您仍在考虑减少HTTP请求的数量,那么最好使用构建工具自动进行内联。否则你将不得不经历“维护地狱”。

答案 3 :(得分:0)

是的,这个原因被命名为cache :-) not inline css和js将被缓存(支持html的移动浏览器使用缓存)