我正在 GitHub 上托管知识库。我可以通过文件名链接文档。例如:Compatibility
在!Sidebar
中用[Compatibility](Compatibility)
。我还可以从其他文件内链接特定标题,如下所示:[Compatibility](Compatibility#Titles)
打开Compatibility.md
@ ## Titles
。但是,如果标题包含空格,我似乎无法链接这些标题... 是否可以在 Markdown 中超链接包含空格的标题?我更愿意保留已有的许多标题中的空格。
Markdown 不知道您正在链接到 Markdown 标题 – 它只知道您正在链接到其他 HTML 页面。这意味着重要的不是实际的标题文本,而是渲染的 HTML 标签。
Markdown 渲染器在生成锚点时通常会用破折号替换空格。像“系统要求”这样的标题通常带有锚点
#system-requirements
。此外,大多数特殊字符往往会被删除。如果目标页面在 GitHub 上,您可以使用将鼠标悬停在标题上时出现的“链接”图标来查看它链接到哪里(它链接到自身,其目的是让您复制指向标题的链接)。右键单击它,选择“复制链接目标”,将结果粘贴到您的文档中并修剪不需要的部分。
在大多数其他情况下(即不在GitHub 上,它使用花哨的 JS 来处理 #fragment 链接),您可以右键单击标题并使用浏览器的“检查”选项查看生成了什么
<h2 id=
或<a name=
。例如,可能有一个<h2 id="sysreq">System requirements</h2>
链接为 的#sysreq
。是的!只需使用URL 百分比编码等效的空格(又名:)
%20
代替链接上的空格即可。例如,如果您想链接到Long Titles
,则不要这样:你可以这样做:
只需确保标题确实有一个
id=
实际设置为的Long Titles
。