6

在与许多 CMS 合作并剪切了许多 HTML 设计之后,当我看到SilverStripe 对 CSS 的使用时,我被转换了。

<div>从本质上讲,根据您所在的页面更改标签中的 ID 将是一种浪费,而更改<body>标签的类和 ID 将是更改特定页面的一种更简单的方法。

在以下问题中,一位同事对此类定罪提出质疑:

在特定网站上,我们有各种结构相似的页面。有些可能包含特殊形式,有些可能不包含。根据我们所在的小节,所有特殊表格都应具有不同的背景图像。

由于声称“额外的 CSS 行会减慢body.onLoads”,我在 CSS 中编写所有背景期望的论点被拒绝了。

任何人都可以在各种案件之间引用证据吗?案例包括: 编码错误的 CSS 和编码良好的 CSS,但每个页面上都有各种未使用的 CSS?

(特别是关于我的问题,谁能解释我的不安?假设图像会在那里并且基于数据库中的变量自动生成内联 CSS(或基于标题部分的样式标签),我感到不舒服。)
4

1 回答 1

8

除非您的网站是 Gmail 或 YouTube(或类似的 CSS 重),否则这无关紧要(明显)。

Google 在其 Page Speed guide 中有一些建议:

http://code.google.com/speed/page-speed/docs/payload.html#RemoveUnusedCSS

删除或推迟文档未使用的样式规则可避免下载不必要的字节并允许浏览器更快地开始呈现。

在浏览器开始呈现网页之前,它必须下载并解析布局页面所需的任何样式表。即使样式表位于缓存的外部文件中,渲染也会被阻止,直到浏览器从磁盘加载样式表。此外,一旦加载了样式表,浏览器的 CSS 引擎必须评估文件中包含的每条规则,以查看该规则是否适用于当前页面。通常,许多网站为所有页面重复使用相同的外部 CSS 文件,即使其中定义的许多规则不适用于当前页面。

减少样式表加载和渲染时间造成的延迟的最佳方法是减少 CSS 占用空间;一个明显的方法是删除或推迟当前页面实际未使用的 CSS 规则。

关于这个:

由于声称“额外的 CSS 行会减慢 body.onLoads”,我在 CSS 中编写所有背景期望的论点被拒绝了。

额外的时间大约是几毫秒。做更容易和可维护的事情,而不是更“高效”的事情。

于 2011-04-28T14:42:38.497 回答