我想写几行文字。除了每行从第6列开始之外,它们应该正常格式化。例如,我不希望代码块格式规则使这一文本块看起来像代码,因为我将使用其他格式,如粗体面等。如何在Markdown中做到这一点?


当前回答

使用非换行空格开始行的一个问题是,如果你的行足够长,那么当它溢出到第二行时,溢出行的第一个字符将从左开始,而不是从上一行的第一个字符开始。

如果你的系统允许你将HTML与你的markdown混合在一起,一种获得缩进的廉价和愉快的方式是这样的:

<ul>
My indented text goes here, and it can be long and wrap if you like.
And you can have multiple lines if you want.
</ul>

从语义上讲,在HTML中这是毫无意义的(一个没有任何LI项的UL节),但我所使用的所有浏览器都很乐意缩进这些标记之间的内容。

其他回答

在gitlab.com上,一个单独的en空间(U+2002)和一个单独的em空间(U+2003)可以正常工作。

可能其他的重复或组合的不精确的空格字符也足够了。

另一种选择是使用像StackEdit这样的降价编辑器。它将html(或文本)转换为所见即所得编辑器中的markdown。您可以在编辑器中创建缩进,标题,列表,它将以markdown格式显示相应的文本。然后您可以保存、发布、共享或下载该文件。你可以在他们的网站上访问它-不需要下载!

为了回答MengLu和@lifebalance在回应SColvin的回答时提出的问题(我更喜欢它提供的控件的接受答案),似乎你可以在将显示设置为none时只针对列表的父元素,必要时添加一个周围元素。因此,如果我们假设我们在一个目录中这样做,我们可以扩展SColvin的答案:

HTML

<nav class="table-of-contents">
  this is a normal line of text
  * this is the first level of bullet points, made up of <space><space>*<space>
    * this is more indented, composed of <space><space><space><space>*<space>
</nav>

CSS

.table-of-contents ul {
  list-style-type: none;
}

做制表符,然后是+号,然后空格,然后是内容

So

*一级 +二级标签

对于引用/缩进的段落,这个hack可能会工作(取决于渲染引擎):

| | | |
|-|-|-|
|  | _"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."_ | |
|

呈现为: