docs/bookdown/02-bootstrap_in_gitbook.md

Use Bootstrap Tables in gitbooks & epub

Gitbook

Most of kableExtra tricks will work in bookdown except those requiring 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))
Group A
Group B
mpg cyl disp hp drat Mazda RX4 21.0 6 160 110 3.90 Mazda RX4 Wag 21.0 6 160 110 3.90 Datsun 710 22.8 4 108 93 3.85 Hornet 4 Drive 21.4 6 258 110 3.08 Hornet Sportabout 18.7 8 360 175 3.15

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

Epub

Right now, it's impossible to load addition CSS through HTML dependency and this mechanism exists for a reason ( See this issue I filed ). 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


haozhu233/kableExtra documentation built on April 13, 2024, 6:49 p.m.