---
title: "references in rmarkdown"
output:
html_document: default
pdf_document: default
---
# Header
Write some more text. Write some more text. Write some more text. Write some more text. Write some more text. Write some more text. Write some more text. Write some more text. Write some more text. Write some more text. Write some more text.
Go back to that [header](#header).
8 回答
应该是正确的降价语法,以跳转到名为pookie的锚点 .
要插入该名称的锚点,请使用HTML:
Markdown似乎并不介意你把锚点放在哪里 . 放在 Headers 中的一个有用的地方 . 例如:
效果很好 . (我在这里演示但是SO的渲染器剥离了锚 . )
关于自闭标签和id =对名=的注意事项
这篇文章的早期版本建议使用
<a id='tith' />
,使用XHTML的自关闭语法,并使用id
属性而不是name
.XHTML允许任何标记为'empty'和'self-closed' . 也就是说,
<tag />
是<tag></tag>
的简写,是一对带有空体的匹配标签 . 大多数浏览器都会接受XHTML,但有些浏览器不接受 . 要避免跨浏览器问题,请使用<tag></tag>
显式关闭标记,如上所述 .最后,属性
name=
在XHTML中已弃用,因此我最初使用id=
,每个人都认可 . 但是,当使用id=
时,HTML5现在在JavaScript中创建一个全局变量,这可能不一定是您想要的 . 因此,使用name=
现在可能更友好了 .(感谢Slipp Douglas向我解释XHTML,并且nailer用于指出HTML5副作用 - 请参阅注释和 nailer 的answer以获取更多详细信息.
name=
似乎无处不在,尽管在XHTML中已弃用 . )在bitbucket.org上,投票的解决方案不起作用 . 相反,当使用标头(带##)时,可以通过将它们作为#markdown-header-my-header-name加前缀来引用它们作为锚点,其中#markdown-header-是渲染器生成的隐式前缀,并且其余的是较低的 Headers Headers ,用破折号代替空格 .
例
会产生这样的隐式锚点
每个锚引用之前的整个URL是可选的,即
相当于
只要它们在同一页面中 .
来源:https://bitbucket.org/tutorials/markdowndemo/overview(编辑此.md文件的源代码并查看如何制作锚点) .
Use a name. Using an id isn't necessary in HTML 5 and will create global variables in your JavaScript
请参阅HTML 5规范5.9.8 Navigating to a fragment identifier - 使用
id
和name
.知道most browsers still turn IDs into global variables非常重要 . 这是a quick test . 使用
name
可以避免创建全局变量以及可能导致的任何冲突 .使用名称的示例:
目的地锚点:
在原始Markdown语法中没有现成的语法,但Markdown Extra提供了至少为 Headers 分配ID的方法 - 然后您可以轻松链接到 Headers . 另请注意,您可以在Markdown和Markdown Extra中使用常规HTML,并且
name
属性已被更新版本的HTML中的id
属性取代 .Markdown Anchor 支持哈希标记,因此页面中锚点的链接只是
[Pookie](#pookie)
Gruber Markdown实际上不支持生成锚,但是在其他实现中,例如Markdown Extra .
在Markdown Extra中,锚ID附加到带有
{#pookie}
的 Headers 或子 Headers .Github Flavored Markdown 在Git存储库页面中(但不在Gists中) automatically generates anchors 在所有 Headers (h1,h2,h3等)上有多个标记标记,包括:
id="user-content-HEADERTEXT"
class="anchor"
href="#HEADERTEXT"
aria-hidden="true"
(这是针对鼠标悬停时显示的svg链接图标)当一个人写道时,排除aria / svg图标:
Github生成:
因此,创建 Headers 链接无需任何操作,并且始终可以使用以下链接链接到它们:
[Header Title](#header-title)
迟到了,但我认为这个添加可能对使用
rmarkdown
的人有用 . 在rmarkdown
中,内置支持对文档中 Headers 的引用 .由...定义的任何标头
可以引用
以下是显示此行为的最小独立
.rmd
文件 . 它可以编织为.pdf
和.html
.对于大多数常见的降价发生器 . 每个 Headers 中都有一个简单的自生成锚点 . 例如,使用pandoc,生成的锚将成为 Headers 的kebab case slug .
根据你使用的降价解析器,锚点可以改变(以symbolrush和La muerte Peluda答案为例,它们是不同的!) . 看到babelmark,您可以在其中看到生成的锚点 depending on your markdown implementation .
使用最新的Markdown,您应该能够使用以下语法:
[](){:name='anchorName'}
这应该创建以下HTML:
<a name="anchorName"></a>
如果您希望锚具有文本,只需在方括号内添加测试:
`Some Text {:name ='anchorName'}