Most of kableExtra
tricks will work in bookdown
except those requires bootstrap
. By default, rmarkdown
won't load bootstrap
for you on gitbook as it's not necesary. In kableExtra
, I used the bootstrap 3.3.7 customization tool and made a customized css copy. You can load it by setting options(kableExtra.html.bsTable = T)
.
library(kableExtra) options(kableExtra.html.bsTable = T) mtcars[1:5, 1:5] %>% kable(booktabs = T) %>% kable_styling( bootstrap_options = c("striped","hover", "bordered", "condensed"), latex_options = c("striped") ) %>% column_spec(1, color = "red") %>% add_header_above(c(" ", "Group A" = 2, "Group B" = 3))
One very important note here is that by default bookdown loads the gitbook table css on start up. It has some conflicts with bootstrap
tables. As a result, some features like hover
won't be able to work by default. To solve this problem, you need to use the latest version of bookdown
(version >= 0.7.21) and turn off the table_css
option under bookdown::gitbook
in _output.yml
bookdown::gitbook: table_css: false
Right now, it's impossible to load addition CSS through HTML dependency (due to a setting in rmarkdown). I will file an issue in rmarkdown
and see if this is something that can be changed. In the mean time, to use bootstrap tables in Epub, you will have to manually load this stylesheet by putting it to a CSS file (such as "style.css") and load it in _output.yml
. For example,
bookdown::epub_book: stylesheet: style.css