【问题标题】:Dynamically switching XSLT stylesheets in the browser?在浏览器中动态切换 XSLT 样式表?
【发布时间】:2011-01-21 13:03:23
【问题描述】:

简短版本:是否可以在浏览器中切换到备用 XSL 样式表,例如 CSS stylesheet switching

长版:

我一直很欣赏CSS Zen Garden;它出色地展示了样式表的强大功能和灵活性。然而,它也揭示了 CSS 的一大弱点:快速查看源代码会显示大量没有语义价值的标签,这些标签的存在只是为了给样式表提供工作空间。 (段落包装<span>s,洋葱分层,底部的六个“extraDiv”......)

我一直在玩弄使用 XSLT 来解决这个问题的想法;从语义上干净的 XHTML 文件开始,并使用 XSLT 注入 CSS 样式表和它所需的任何非语义标记。然而,这样做似乎没有什么实际价值,除非 XSL 样式表可以在浏览器中以类似于切换 CSS 样式表的方式进行切换。否则,每个不同的样式表都会导致缓存未命中,您还不如在服务器端进行处理。

浏览器对<?xml-stylesheet?> PI 的支持似乎不错,但我还没有找到通过JavaScript 或浏览器UI(FF、Chrome)触发备用样式表的方法。有其他人尝试过吗?

编辑:哦,欢迎使用特定于浏览器的解决方案;这只是一个实验,不是我希望很快在现场网站上使用的东西! ;-)

【问题讨论】:

  • 您是要在加载时切换,还是作为页面加载后用户交互的结果?
  • @Robusto — 理想情况下是用户交互的结果。就像用户可以选择要应用的 CSS 样式表(通过 JS、FF 的视图菜单等)一样,我希望找到一种方法来类似地选择 XSL 样式表。

标签: javascript html xslt xhtml


【解决方案1】:

至少对于 IE,您可以在 JScript 中手动进行转换并将转换的内容写入文档。请参阅this 之类的内容。

This 与 FF 类似。

【讨论】:

  • 我没有从手动转换的角度考虑过。感谢您的链接!
猜你喜欢
  • 1970-01-01
  • 2011-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-26
  • 1970-01-01
  • 2010-10-03
相关资源
最近更新 更多