显示 HN:无 JavaScript 的 (X)HTML 包含
Show HN: JavaScript-free (X)HTML Includes

原始链接: https://github.com/Evidlo/xsl-website

这是一个使用浏览器内置XSL支持构建网站的简单示例,该网站在所有页面上具有统一的主题,无需任何服务器端代码、静态网站生成器或Javascript。请参阅演示网站。当您浏览到index.xml(或任何其他XML文件)时,浏览器会加载XML顶部指定的模板文件。该模板文件描述了如何将XML中的各种自定义标签渲染为HTML。请参阅advanced/以获取更多关于定义带有字段的模板或在其他模板中使用模板的高级示例。

## 无需 JavaScript 的网页,使用 XSLT Evidlo 分享了一个演示,展示了如何使用 XSLT 进行模板处理,构建简单的静态网页,无需 JavaScript 或构建步骤。这种方法旨在复制 Jekyll/Hugo 等工具的功能,提供一种避免页眉和页脚样板代码的直接方法。页面被结构化为引用 XSL 样式表的 XML 文件,从而生成正常的 URL。 然而,XSLT 的未来并不确定。由于安全问题和缺乏现代更新(目前停留在 XSLT 1.0),Google 已经提议从 Web 标准中移除 XSLT 支持,浏览器可能会限制或移除支持。这促成了该演示,作为该技术仍然可行时的“概念验证”。 讨论围绕 HTML Imports 失败的原因、Web 组件替代方案的复杂性以及 XSLT 声明性特性的潜在优势展开。虽然有些人哀叹 XSLT 可能的损失,但另一些人则指出安全漏洞以及浏览器未实现较新的 XSLT 版本作为移除它的理由。 许多评论者分享了使用 XSLT 用于各种目的的相关项目和经验。
相关文章

原文

This is a simple example of using browsers' built in XSL support to build a website with common theming across all pages without any server-side code, static website generators, or Javascript.

See the demo site

When you browse to index.xml (or any of the other XML files), the browser loads the template file given at the top of the XML. This template file describes how to render the various custom tags in the XML as HTML.

See advanced/ for more advanced examples of defining templates with fields, or using templates inside of other templates.

联系我们 contact @ memedata.com