链接宏

MDN 提供了许多宏,可用于创建与 MDN 内容的始终保持最新状态的链接。在本指南中,您将了解 MDN 交叉引用宏,您可以使用它们来包含指向另一页面的单个链接,或指向文档所有子页面的链接列表。

MDN 提供了创建链接列表的宏

{{SubpagesWithSummaries}}

插入当前页面的子页面的定义列表(<dl>),其中每个页面的标题作为 <dt> 条目,其第一个段落作为 <dd> 条目。

{{ListSubpagesForSidebar()}}

当不带参数包含时,将插入指向当前页面子页面的有序列表。第一个参数是链接树父页面的 slug。链接文本显示为代码。将第二个参数设置为 true1 会将链接转换为纯文本。将第三个参数设置为 true1 会在列表顶部添加指向 slug(父)页面的链接,链接文本为“Overview”。

{{QuickLinksWithSubpages()}}

创建一个快速链接集,使用当前页面(或指定页面)的子页面作为目标。这会创建最多两层的分层列表。页面的标题用作链接文本,其摘要用作工具提示。

要包含一个有序的链接列表,其中包含此页面及其同级页面,请编写以下内容

md
{{ListSubpagesForSidebar("/en-US/docs/MDN/Writing_guidelines/Page_structures/Macros", 1)}}

一些宏会创建单个链接来交叉引用 CSS、JavaScript、SVG 或 HTML 功能,包括属性、元素、数据类型和 API。创建单个链接的宏至少需要一个参数:所引用的功能。

这些宏是

这些宏的第一个参数是所引用文档 slug 的最后一部分。例如,对于 HTML 元素,使用 {{HTMLElement("")}} 并将 slug 中 Web/HTML/Reference/Elements/ 之后的 `slug` 部分作为第一个参数。对于 {{CSSxRef("")}},请在 slug 中添加 Web/CSS/ 之后的 `slug` 部分。链接将指向该页面。

默认情况下,显示的文本是第一个参数中写入的链接资源,对于 {{HTMLElement()}},则用尖括号括起来。这可能不是您想要的。例如,range 输入类型的 slug 是 Web/HTML/Reference/Elements/input/range。包含 {{HTMLElement("input/range")}} 会生成“<input/range>”。这不是您想要的。所有宏都接受其他参数,因此您可以提供您想要显示的文本。

第二个参数(如果存在)提供链接文本。在 input range 的情况下,我们将编写 {{HTMLElement("input/range", "<code>&lt;input type=&quot;range&quot;&gt;</code>")}},它会生成“<input type="range">”。此特定宏会在第二个参数包含空格时删除 <code> 和尖括号,因此我们添加了括号和代码标签。

每个宏都不同!

为了防止 HTML 代码语义和 CSS 代码样式,一些交叉引用宏包含一个带有 "nocode" 的参数来禁用此样式。

例如,{{CSSxRef("background-color")}} 创建了代码链接“background-color”,而 {{domxref("CSS.supports_static", "check support", "", "nocode")}} 创建了纯文本链接“check support”。

请务必查看源代码以了解您正在使用的宏的工作原理以及各种参数;虽然参数通常记录良好,但像我们在 {{HTMLElement("")}} 宏中看到的“如果第二个参数包含空格则不渲染为代码”这样的例外情况存在于代码中,但未在其他地方记录。

要了解每个宏支持哪些参数以及每个宏的参数顺序,宏的源文件(上面已链接)包含文档。有一个常用宏列表,其中每个宏都会在页面主内容区域生成链接。

另见

  • 使用宏
  • 常用宏,包括 BCD 宏({{Compat}})和规范宏({{Specifications}})。
  • 横幅和通知指南,包括 {{SeeCompatTable}}{{Deprecated_Header}}{{SecureContext_Header}} 宏。