kable表在网站上没有正确呈现

时间:2018-03-20 16:10:09

标签: css r r-markdown blogdown

我使用R包blogdown来管理我的网站。我创建的表格在保存和serve_site之后呈现为标准(?)降价表,即使我使用knitr::kable。但是当我在不同的RMarkdown文件中编织块时,它会正确呈现。这是代码块。

```{r eda-tab, echo=FALSE}

knitr::kable(matrix(c(
      '7 yrs', '67%',
      '6 yrs', '78%',
      '5 yrs', '86%',
      '4 yrs', '92%',
      NULL
), ncol = 2, byrow=TRUE, dimnames = list(NULL, c('Cutoff', '% Remaining'))),
booktabs=TRUE, caption = 'Inductees')
```

website rendering

knitted rendering

我正在使用hugo-octopress theme。这可能是主题的问题,但我不认为创作者是R用户,因此我不确定如何使用它们来解决它。

1 个答案:

答案 0 :(得分:4)

knitr::kable()在用于生成blogdown帖子时输出HTML表格。它看起来"标准"是因为应用于the CSS styling中的表元素的hugo-octopress theme非常小:

table,
th,
td
 {
    border: 1px solid black;
    padding: 3px;
}
th {
    font-weight: bold;
    text-align: center;
}

导致一个带有黑色细胞标记的简单表格。

要解决此问题,请为文件夹.css内的表格样式创建自定义static/css文件,例如static/css/tables.css。然后在config.toml中更改CSS overide的行,使其指向customCSS = ["css/tables.css"]。作为参考,您还可以查看hugo-octopress documentation on custom CSS,这可能会对您有所帮助。

您还可以将主题中的hugo-octopress.css文件复制到static/css并修改其中的表格元素。请注意,除非您覆盖hugo-octopress定义的CSS属性,否则这些属性也将应用于表。 基本主题样式后,自定义CSS样式会添加到标题中,因此添加到customCSS的所有文件都会最后应用。