是否存在等价的markdown语法:
Take me to <a href="#pookie">pookie</a>
...
<a name="pookie">this is pookie</a>
是否存在等价的markdown语法:
Take me to <a href="#pookie">pookie</a>
...
<a name="pookie">this is pookie</a>
当前回答
对于头部包含表情符号的情况,我将快速补充,在这种情况下,只需删除引用链接中的表情符号就更简单了。例如
# ⭐ Title 2
....
[Take me to title 2](#-title-2)
在某些情况下,由于一些奇怪的原因,这不起作用,例如在这里的设置中。这种情况下的解决方案是包括表情符号的整个代码。
其他回答
对于大多数常见的降价生成器。在每个头文件中都有一个简单的自生成锚。例如,使用pandoc,生成的锚将是头部的一个烤肉盒。
echo "# Hello, world\!" | pandoc
# => <h1 id="hello-world">Hello, world!</h1>
取决于您使用的markdown解析器,锚可以改变(以symbolrush和La muerte Peluda回答为例,它们是不同的!)。看这个babelmark,你可以看到生成的锚取决于你的markdown实现。
正如我们所看到的(从答案中),这没有标准的方法;不同的降价处理器在提供这种可能性的降价扩展方面会有所不同。
使用pandoc,你可以得到你想要的:
Take me to [pookie](#pookie)
...
[this is pookie]{#pookie}
这给出了(通过pandoc-2.9.2.1):
<p>Take me to <a href="#pookie">pookie</a></p>
<p>…</p>
<p><span id="pookie">this is pookie</span></p>
我们也可以用一个锚id创建一个空span:
Take me to [pookie](#pookie)
...
this is pookie []{#pookie}
这将产生:
<p>Take me to <a href="#pookie">pookie</a></p>
<p>…</p>
<p>this is pookie <span id="pookie"></span></p>
除此之外,对于pandoc和大多数常见的markdown生成器,在每个报头中都有一个简单的自生成锚。(请参阅此处和其他答案,以方便地(自动)生成和引用此类锚。)
在bitbucket.org上投票的解决方案行不通。相反,当使用标题(使用##)时,可以将它们作为锚点引用,将它们作为#markdown-header-my-header-name作为前缀,其中#markdown-header-是由渲染器生成的隐式前缀,其余是小写标题,用破折号代替空格。
例子
## My paragraph title
会产生这样的隐式锚
#markdown-header-my-paragraph-title
在每个锚引用之前的整个URL是可选的,即。
[Some text](#markdown-header-my-paragraph-title)
相当于
[Some text](https://bitbucket.org/some_project/some_page#markdown-header-my-paragraph-title)
前提是它们在同一页上。
来源:https://bitbucket.org/tutorials/markdowndemo/overview(编辑这个.md文件的源代码,看看锚是如何制作的)。
使用一个名字。在HTML 5中不需要使用id,它会在JavaScript中创建全局变量
参见HTML 5规范,5.9.8导航到片段标识符- id和name都被使用。
重要的是要知道大多数浏览器仍然将id转换为全局变量。这里有一个快速测试。使用名称可以避免创建全局变量和可能导致的任何冲突。
使用名称的示例:
Take me to [pookie](#pookie)
和目的锚点:
### <a name="pookie"></a>Some heading
对于头部包含表情符号的情况,我将快速补充,在这种情况下,只需删除引用链接中的表情符号就更简单了。例如
# ⭐ Title 2
....
[Take me to title 2](#-title-2)
在某些情况下,由于一些奇怪的原因,这不起作用,例如在这里的设置中。这种情况下的解决方案是包括表情符号的整个代码。