【问题标题】:how to use CSS to set markdown list bullets style by markdown list symbol used如何使用 CSS 通过使用的降价列表符号设置降价列表项目符号样式
【发布时间】:2019-09-17 14:44:01
【问题描述】:

我知道我可以使用 CSS 设置不同的降价无序列表项目符号样式, 但这适用于我使用的每个降价列表符号。

文件标记:

- elem1
  + elem2
+ elem3
  - elem4
  - elem5

文件 CSS:

ul {
    list-style-type: square;
}

HTML 结果:

所有元素都带有正方形: https://pasteboard.co/IxPSlcj.png


是否有某种方法可以设置某些元素的项目符号样式,而不是通过缩进级别而是通过使用特定符号?
更具体地说,什么 CSS 代码和/或降价处理器和/或降价增强允许我编写与上面相同的降价,但给了我这样的 HTML:

https://pasteboard.co/IxQ28hH.png


编辑

=> 在这里进行了一些很好的讨论后,我得出结论,这是不可能的

【问题讨论】:

  • 不……这是不可能的,

标签: css list markdown


【解决方案1】:

你没有说你使用的是什么 Markdown 处理器。 Basic Markdown 无法在标记中提供可以通知 CSS 样式的上下文。 Markdown 的某些变体可能支持增强功能,从而产生可用的解决方案。

在不更改处理器的情况下,最好的办法是对 HTML 进行后处理,以包含足够的样式信息来实现您想要的效果。它可以像将一个类添加到特定页面的<body> 标记一样简单。然后你可以添加如下样式:

body.special ul > li:first-child > ul > li {
  list-style-type: square;
}

【讨论】:

  • 谢谢,但我不是在寻找后处理 HTML 解决方案。我可以使用任何降价处理器和/或任何降价增强功能,但我发现没有一个可以导致可用的解决方案(谢谢,我会更新问题以添加它)。目前我认为 Paulie_D 是对的,仅使用 CSS 和 Markdown 是不可能的。我将此设置为最佳答案,因为它是最完整的答案。
  • 如果您对其他 Markdown 处理器持开放态度,也许您对另一种标记格式持开放态度:AsciiDoc?使用 Asciidoctor,您几乎可以在任何您喜欢的地方指定角色,这些角色成为 CSS 类名。 AsciiDoc 标记将相当容易地解决您的问题。
  • 我查看了 Asciidoc 和 Asciidoctor 工具,但是如何创建一个角色来解决我的问题?在我看来,列表“角色”适用于我使用的所有 asciidoc 列表符号,与降价相同的行为。我错过了什么吗?
  • Asciidoctor 在这种特殊情况下也受到限制,因为它不能将角色直接应用于列表项。您可以将角色应用于列表,并使用 CSS 设置特定列表项的样式。或者,列表项可以嵌入一个包含另一个列表的开放块(具有角色)。作为作者,标记并不理想/直观,但它是可能的。使用 Markdown,这是不可能的。
猜你喜欢
  • 2016-10-22
  • 1970-01-01
  • 1970-01-01
  • 2018-09-23
  • 1970-01-01
  • 2013-02-24
  • 2015-01-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多