【问题标题】:Pelican site generator: themes do not have visible table borders?Pelican 站点生成器:主题没有可见的表格边框?
【发布时间】:2016-05-31 23:17:03
【问题描述】:

我正在使用 Pelican 3.6.3 生成站点。源内容在 Markdown 中,并包含许多表格。我尝试过使用四五个不同的 Pelican 主题生成输出,但表格从来没有任何可见的边框。所有表格内容按行列排列整齐,但没有单元格边框或外边框。

这有什么具体原因吗?我打算手动修改 CSS 吗?似乎不太可能所有主题作者都会做出相同的设计决定。

我的一张桌子的例子:

| Measurement      | 2401     | 2701    |
|------------------|----------|---------|
| Total height     | 2 13/16" | 4 1/8"  |
| Diameter at base | 4"       | 4 9/16" |

【问题讨论】:

  • 这很可能是您的浏览器默认样式。例如,Chrome 默认不再显示表格边框

标签: html css pelican


【解决方案1】:

是否设置了 HTML 属性 border?如果是这样,很可能是您的浏览器决定如何呈现表格。

我自己检查了一些主题(只是快速浏览了一下 CSS 代码,不保证正确性):

| Theme           | Border |
|=================|========|
| apricot         | No     |
| basic           |        |
| bluegrasshopper |        |
| blueidea        |        |
| blue-penguin    |        |
| bold            |        |
|-----------------|--------|
| backdrop        | Yes    |
| bootlex         |        |

我可以想象,根据内容、理由和其他格式方面的不同,all 表格的边框是不合适的。因此,我可以理解默认情况下禁用表格边框并让主题用户自定义行为(如果需要)的设计决策。

在我的网站上,我使用表格来处理许多不同的事情。通常,尤其是当包含像​​图像或语法高亮区域这样的块时,边框会使表格看起来很奇怪。至此,我支持这个设计决定。

但是,如果想要在一些表上设置边框怎么办?如果可以在文章源文件中指定特殊的 HTML 类,则使用 CSS 的大小写相关样式很容易实现。不幸的是,python-markdown(或一般的markdown)不支持这种功能。至少,这是谷歌一项简短的研究所揭示的。 (也许有一个我不认识的python-markdown 扩展名?..)

另一种方法是使用另一种标记语言。 reStructuredText 比降价更复杂,但也更可扩展。 table 指令本身支持 HTML 类的规范。我自己使用reStructuredText,并且喜欢标记语言引入的高度灵活性。

您也可以让javascript 完成这项工作,并根据表格内容同样设置HTML 类的样式。但是,我认为这不是一个好的解决方案,因为您创建了对 javascript 的依赖以显示静态网站。

希望对你有帮助:)

tl;dr

  • 具体原因最有可能作为主题更普遍适用。
  • 是的,我们邀请您在 CSS 代码中或任何最适合您的地方自行介绍所需的自定义设置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多