---
title: "Untitled"
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
```{r mtcars, warning=FALSE, message=FALSE, echo=FALSE, results='asis'}
library(tidyverse)
library(kableExtra)
kable(mtcars %>%
select(1:5) %>%
head(10) %>%
mutate(cyl = cell_spec(cyl, align = "r")),
"html",
escape = FALSE) %>%
kable_styling("striped", "hover", full_width = TRUE) %>%
row_spec(c(1, 3), background = "yellow")
```
我follow the KableExtra guide使用cell_spec()
函数对齐单元格。我试图 right 对齐我的cyl
列。但是请注意,该列未正确对齐(下图)。
出了什么问题?
答案 0 :(得分:1)
Jason,kable
函数本身具有align选项。我认为,如果您不寻找任何条件对齐方式,则应该使用它。
library(kableExtra)
library(tidyverse)
mtcars %>%
select(1:5) %>%
head(10) %>%
kable(align = c("crcccc")) %>%
kable_styling("striped", "hover", full_width = TRUE) %>%
row_spec(c(1, 3), background = "yellow")
对于cell_spec
本身,现在看来,这种HTML的align选项无法满足您的需求。如果检查通过这种方法生成的原始HTML,最终将看到cell_spec
将单元格放入<span>
标记中。您可以在此处指定text_align
,但是会被text_align
中的<td>
设置所覆盖。我将在本节中查看是否应该解决此问题或添加警告说明。
<td style="text-align:left;"> <span style=" text-align: right;">4</span> </td>