2010-10-12 23 views
0

我正在建立一个站点,页面之间有很多类似的CSS。我已经决定,一个好的方法是将css通过php函数(带参数)生成为字符串,并在我服务的每个页面中输出为内部样式表。好处:很长的内部样式表是否影响SEO?

  • 这样,如果我做出改变它将反映整个网站,而无需维护重复
  • 我只能发送必要的CSS的某个页面
  • 它比其小的更好css文件和包容
  • 加载的样式表使用的参数了
  • 我可以计算尺寸前的内容可能会显示的可能性发送大量的CSS头
  • 我可以创建将运行如下从这些函数接收的结果或服务缓存精缩CSS

我还没有看到这种情况在其他地方很遗憾,所以我在想,这可能是因为搜索引擎优化的层。生成的内部样式表将最大大约15kb(在缩小样式表之前)。

我需要您对此方法的看法以及您对长内部样式表对SEO有何影响的想法。

非常感谢。

+2

为什么你不能只有一个大的缩小的外部样式表链接? – 2010-10-12 22:45:39

+0

虽然我怀疑它,但我不能对SEO说话。但是你知道CSS'import()',对吧?虽然我了解您的方法的好处,但混合服务器端和客户端技术可能会让IMO变得混乱。只要将它们缩小到一个,特别是现在只有15K。 – 2010-10-12 22:47:55

+0

@ Max Shawabkeh添加所有页面所需的不同css会导致一个大的样式表,即使缩小,仍然会产生一个无格式的内容问题来解决,另外还有80%以上的样式不需要一些页面 – 2010-10-12 22:50:56

回答

4

不是你的问题的答案(这很有趣!),但你的大多数内联CSS的论点是错误的。外部样式表总是更好更快的解决方案。

  • 您可以通过添加一个版本号的样式表的文件名

  • 第二点处理的第一点是没有实际意义,因为外部文件被缓存,因此不需要额外的请求

  • 第三点是由于同样的原因m 012

  • 一旦样式表被缓存,第四点并不重要

  • 整个CSS代码库

  • 第六点我不明白的,通常一小部分 -

  • 第五点可以使用内联CSS只需要进行 动态更新的属性进行排序。

转到外部样式表。只要确保它获得正确的缓存头!

+0

谢谢你的回答。第五和第六点是关于让可能需要不时更改维度的开发人员更轻松的生活。外部样式表被缓存的事实让我浮想联翩,现在改变了整个图片。 – 2010-10-12 23:27:38

2

像嵌入式JavaScript的长块一样,它们被忽略。

机器人看内容,而不是布局。如果您想要更好地表达他们所看到的内容,请尝试Lynx browser

不幸的是,它们不会被缓存在用户的浏览器上,因为外部CSS和JS都会使每个页面加载速度变慢。实际上,与每个页面相关的服务器相关的“css snippets”相比,拥有大型外部样式表会更高效。

1

就我所知,您的CSS表格在SEO中起着最小的作用,更重要的是您的HTML标记和执行。

以下的顺序“< H1> - < H5>”为您的标题标签,伴随“< P>”的标签,而不是'< font>的或类似的方法是什么将影响一个网络爬虫识别能力并优先处理您网页中的内容。

虽然您可以使用CSS来隐藏您只希望出现在搜索引擎和类似技术中的段落,但与HTML结构相比,它没有什么重要性。

2

假设'内部样式表'表示使用<style>标签包含的内联CSS,我建议不要这样做。如果您使用外部样式表,则访问者会在第一次请求时下载一次,然后将其缓存。通过内嵌所有CSS,您可以为每个HTML请求添加页面权重。

尽管为当前页面提供CSS或将CSS分割成许多不同的页面特定样式表似乎更有效,在实践中,通常只有一个样式表更好。提供这个压缩的和适当的expires头文件几乎总是比替代文件更快。

关于SEO,机器人忽略CSS,所以这不会有任何影响。如果你有太多的CSS,会大大减慢你的页面加载速度,理论上你可能会开始出现问题,但是在这可能是一个问题之前,你需要一个非人的数量的内联CSS。

1

你说的所有好处都适用。搜索引擎不会太在意CSS和javascript(当然,如果你的页面需要太长的时间来包装和发送,这会影响,但我不认为是这种情况)。

我以前见过这种解决方案,但人们倾向于避免使用脚本来提供服务,一旦您可以使用媒体查询,而不是只写一个外部样式表。我想你应该看看这个。

但是,我看到你正试图优化发送的CSS。这很好,但是谈论所有工作表的80k,让我觉得如果你没有过度复杂的规则。

那么,作为最后的意见,你可以缓存许多不同的回应,并使用页面头上的“规范”的东西。