>我创建了一个有46页的新网站:http://www.lampshade111.com/我使用Microsoft Expression Web 4,使用动态Web模板。所有 css 都嵌入在 dwt 页面的标题中,并更新到每个单独的网页。一切看起来和工作都很完美 - 没有问题。
但是,我读过的所有内容都建议使用外部样式表。因此,本着"良好实践"的精神,我从 dwt 标题中删除了 css,并使用(链接)了 dwt 的外部样式表。当然,各个页面由 dwt 更新,链接的 css 文件显示在每个页面上。同样,一切看起来和工作都像以前一样完美。
问题:使用外部样式表后查看我的网站时,网站在我的浏览器中要慢得多。
我有另一个有 256 页的网站,所有 css 都嵌入在主 dwt 的标题中 - 没有外部样式表。http://www.hoylelamps.com/多年来它一直工作得很好。
问题:有什么理由不在 dwt 的标题中使用 css 吗?这是否应该比外部样式表更有效(更快)?我找不到有关此主题的任何信息。
感谢您的任何帮助? - 吉姆
我无法想象为什么外部样式表比外部样式表"慢得多"。链接样式表将在加载后立即缓存,而不必再次加载。这意味着您加载的第二页和第三页应该更快,除非您在每个页面上使用完全不同的格式。
嵌入式样式表一开始会运行得更快,因为只需要加载一个资源。但随着时间的推移,维护带有嵌入式样式表的多个页面所需的工作将更加繁重。请记住,每次您在任何页面中更改一个 CSS 规则时,您都必须在每个页面中进行该更改并再次上传所有这些页面。如果不这样做,您将在整个站点中具有不同格式的单个页面。
外部链接样式表排除了此问题。一个样式表,一个要更正和上载的文件。我能想到的唯一会使您的页面加载或响应速度变慢的事情如下:
- 非常大的样式表
- 使用"import"而不是"link"命令(某些浏览器对这些命令的反应不同)
- 您正在使用非标准 CSS 或非常密集的样式命令。
没有看到CSS,我真的不能给你更多的建议。浏览器首先必须加载两个文件的事实将导致其运行速度稍慢。但是很难理解为什么整个网站运行得更慢。
以下是一些建议:
- 您是否在其他浏览器和其他计算机上检查和测试了您的页面?也许它根本不是页面。也许是您正在使用的浏览器或计算机。
- 如果样式表很大,请将其分解为逻辑组件。我有样式表,可以格式化表格,表单和特殊组件,这些表格,表单和特殊组件不会出现在每个页面上。仅加载与该页面相关的 CSS。有一个主样式表,然后是特定类型组件的专用样式表,如前所述。
- 检查您正在使用的命令类型。您是否充分利用了级联、继承和特异性?尝试创建尽可能高效的 CSS。
可能很容易,但是使用嵌入式样式表更新和维护大型网站会更加繁琐。
希望有帮助。