每个网页都有单独的CSS

时间:2012-12-16 08:33:50

标签: asp.net html css css3

我正在使用asp.net 4.0开发一个网站。在设计时我有一个问题

  • 每个网页都有单独的CSS吗?

OR

  • 在一个css中使用所有样式吗?

请告诉我什么是最佳解决方案?

4 个答案:

答案 0 :(得分:2)

最好将所有规则保存在一个CSS文件中,因为此文件将被缓存以用于所有后续请求。

除非你有大量的CSS(即超过几百KB),否则这不会影响CSS引擎的性能,但它会显着加快页面的加载速度,因为不必为每个页面重复请求已加载,这将是您生成的HTML页面之外的最大加载时间增益。

编辑:您应该考虑实施编译时(或按需)连接;通过这种方式,您可以将多个CSS文件作为单个文件提供给客户。

答案 1 :(得分:2)

这取决于代码库的大小。

通常全局规则都应该在一个文件中,除非你正在处理一个庞大的代码库,将它们组织成单独的文件是有意义的(但仍然包含在每个请求的全局内)。

通常,页面特定的CSS应放在自己的文件中,并且只包含在需要它的页面上。

一般来说,使用大型代码库,您将拥有一个minifier和构建过程,将所有全局css连接到一个文件中,并将其包含在生产环境中。这可能很难调试,因此在开发中最好将它们保存为单独的文件。

答案 2 :(得分:2)

除了缓存和最小化其他答案中列出的好处之外,请考虑您的CSS实际上是为您的网站或Web应用程序分配主题。如果您考虑主题在您喜欢的媒体播放器或Web浏览器中的工作方式,那么当您应用该主题时,它通常会影响整个应用程序,而不仅仅是其中的一部分。

因此,如果您将CSS视为主题,那么您的设计人员就可以更轻松地更改网站的外观,而无需触及单行HTML。由于良好的设计实践是将HTML,JavaScript和CSS完全分开,因此可以更轻松地对其进行更改,而无需担心其他更改。这减少了错误的机会,因为不改变的事情保持稳定。

更重要的是,您的设计师只需对1个文件进行更改即可创建新主题,从而使他们的工作更轻松。它使您的工作更轻松,因为您不必经历并修复一堆破碎的HTML和JavaScript,因为CSS专家必须对可能不是他们专业领域的代码进行更改。

这种做法的一个很好的例子是Stack Exchange。 Stack Overflow,Server FaultSuper UserStack Apps都在同一Q& A引擎上运行,但每个引擎都有一个略有不同的主题。要创建一个全新的Q& A站点,前端变化几乎只涉及CSS更改。这就是Stack Exchange可以让只有1名设计师Jin,他负责管理网络上每个Q& A站点的设计。让他的工作更轻松的是标准化和简洁性,并遵循“不要重复自己”的经验法则。

通过查看浏览器源,您可以看到只有一个CSS文件:

    <link rel="stylesheet" type="text/css" 
        href="http://cdn.sstatic.net/stackoverflow/all.css?v=52aab16f8140">

答案 3 :(得分:1)

不,为每个网页保留单独的css是不好的。专业人士从不这样做。但你可以为不同的浏览器使用两个或三个单独的CSS ..