我正在使用Symfony CMS,它使用 Markdown 来撰写文章。我需要对本杰明·富兰克林( Benjamin Franklin )的一句话进行引用,并希望在引用之后加上引用,但现在它所做的只是对整行进行引用。如何在降价语法中做到这一点?
6 回答
Markdown 没有专门的引用语法。
你最好的选择是这样的:
> Quote here.
>
> -- <cite>Benjamin Franklin</cite>
这导致:
在这里引用。
——本杰明·富兰克林
> The secret to creativity is knowing how to hide your sources.
> -- <cite>[Albert Einstein][1]</cite>
[1]: http://www.quotedb.com/quotes/2112
If you have a style manual, use its guidelines to determine exactly where to place the citation, etc.
Output of Markdown + Smartypants for the above is
The secret to creativity is knowing how to hide your sources. -- Albert Einstein
> Quote
— Benjamin Franklin
根据HTML Living Standard,引用的属性必须放在blockquote
元素之外。
引用的属性(如果有)必须放在 blockquote 元素之外。
请注意,该cite
元素代表作品的标题,不得用于标记人名。有关更多详细信息,请查看HTML 标准:4.5.6cite
元素。
通常使用破折号 (U+2014) 代替连字符。许多 Markdown 解析器支持 Unicode,这意味着您可以直接编写破折号,而不是使用HTML 实体。直接编写这样的字符可以提高可读性,更多的工具会知道你想要什么而不是恐慌,并且你的文档可能更便携,因为你没有将自己限制在 HTML 上。
在此处添加另一个示例以供参考。从https://en.wikipedia.org/wiki/Special:CiteThisPage生成
> Test-driven development (TDD) is a software development process that relies on the repetition of a very short development cycle: requirements are turned into very specific test cases, then the software is improved to pass the new tests, only.
>
> --- [Test-driven development. (2016, November 20). In Wikipedia, The Free Encyclopedia. Retrieved 23:45, November 20, 2016](https://en.wikipedia.org/w/index.php?title=Test-driven_development&oldid=750634597)
产生以下内容:
测试驱动开发(TDD)是一个软件开发过程,它依赖于一个非常短的开发周期的重复:需求被转化为非常具体的测试用例,然后软件被改进以通过新的测试。
---测试驱动开发。(2016 年 11 月 20 日)。在维基百科,免费百科全书。2016 年 11 月 20 日 23:45 检索
1.由于任何引用都应该有来源,即使它是未知的。
2.由于降价
> Quote
呈现为<blockquote><p>Quote</p></blockquote>
和
> Quote1
>
> Quote2
呈现为
<blockquote>
<p>Quote1</p>
<p>Quote2</p>
</blockquote>
我对此的解决方案总是将最后一个<p></p>
作为源并由 css 处理(在我的情况下为 SCSS):
blockquote {
p {
display: inline;
&:first-of-type {
quotes: '\201C' '\201D' '\2018' '\2019';
&::before {
content: open-quote;
margin-right: 0.1rem;
}
}
&:last-of-type {
quotes: '\201C' '\201D' '\2018' '\2019';
font-style: italic;
&::before {
content: close-quote "\000A" "\2014" " ";
white-space: pre;
margin-left: 0.1rem;
font-style: normal;
}
}
// In case of a quote without a source.
&:only-of-type {
font-style: normal;
quotes: '\201C' '\201D' '\2018' '\2019';
&::before {
content: open-quote;
margin-right: 0.1rem;
}
&::after {
content: close-quote;
margin-left: 0.1rem;
}
}
}
}
它\000A
是新行 unicode 字符 css 格式,它有助于使源代码出现在下一行,如果您不想要,只需将其删除并在其中添加一些空格。其他的也是 unicode 字符 css 格式。
就我个人而言,我更喜欢将块引用嵌套在块引用中。
这是我喜欢这样做的方式:
> Quote here.
>
>> <cite>Benjamin Franklin</cite>
输出因您对所有内容的样式而异,但使用普通的 `ol github 看起来像这样,我个人认为这看起来很棒!