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


当前回答

令人惊讶的是,还没有人提出只使用带填充的div的想法,所以你可以这样做:

<div style="padding-left: 30px;">
My text
</div>

其他回答

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

So

*一级 +二级标签

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

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

为了回答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;
}

一种方法是使用项目符号,它允许您指定多个缩进级别。项目符号用两个空格、星号和另一个空格的倍数插入。

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>

这种方法有一个很大的优点,那就是当您查看原始文本时,它也很有意义。

如果你不想看到项目符号本身,你应该(取决于你在哪里使用markdown)能够为整个标记下来的区域在css中添加li {list-style-type: none;}。

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

如果你的系统允许你将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节),但我所使用的所有浏览器都很乐意缩进这些标记之间的内容。