diff --git a/docs/bookdown/02-bootstrap_in_gitbook.md b/docs/bookdown/02-bootstrap_in_gitbook.md
index c899860..3307859 100644
--- a/docs/bookdown/02-bootstrap_in_gitbook.md
+++ b/docs/bookdown/02-bootstrap_in_gitbook.md
@@ -1,7 +1,7 @@
 # Use Bootstrap Tables in gitbooks & epub
 
 ## Gitbook
-Most of `kableExtra` tricks will work in `bookdown` except those requires [`bootstrap`](http://getbootstrap.com/). 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](https://getbootstrap.com/docs/3.3/customize/) and made a customized css copy. You can load it by setting `options(kableExtra.html.bsTable = T)`. 
+Most of `kableExtra` tricks will work in `bookdown` except those requiring [`bootstrap`](http://getbootstrap.com/). 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](https://getbootstrap.com/docs/3.3/customize/) and made a customized css copy. You can load it by setting `options(kableExtra.html.bsTable = T)`. 
 
 
 ```r
diff --git a/docs/bookdown/cross-format-tables-in-bookdown.html b/docs/bookdown/cross-format-tables-in-bookdown.html
index 3610ada..57f28c7 100644
--- a/docs/bookdown/cross-format-tables-in-bookdown.html
+++ b/docs/bookdown/cross-format-tables-in-bookdown.html
@@ -25,7 +25,7 @@
 <meta name="author" content="Hao Zhu">
 
 
-<meta name="date" content="2018-10-08">
+<meta name="date" content="2018-10-16">
 
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <meta name="apple-mobile-web-app-capable" content="yes">
diff --git a/docs/bookdown/index.html b/docs/bookdown/index.html
index 036a660..24ea124 100644
--- a/docs/bookdown/index.html
+++ b/docs/bookdown/index.html
@@ -25,7 +25,7 @@
 <meta name="author" content="Hao Zhu">
 
 
-<meta name="date" content="2018-10-08">
+<meta name="date" content="2018-10-16">
 
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <meta name="apple-mobile-web-app-capable" content="yes">
@@ -158,12 +158,12 @@
 <div id="header">
 <h1 class="title">Using kableExtra in Bookdown</h1>
 <p class="author"><em>Hao Zhu</em></p>
-<p class="date"><em>2018-10-08</em></p>
+<p class="date"><em>2018-10-16</em></p>
 </div>
 <div id="introduction" class="section level1">
 <h1><span class="header-section-number">Chapter 1</span> Introduction</h1>
 <p>If you have tried to use <code>kableExtra</code> in a <code>bookdown</code> project with mutltiple formats, you may have experienced some problems. For example, you might not be able to render HTML and PDF tables at the same time using the same piece of code. At the same time, you might start to wonder if it’s possible to create <code>bootstrap</code> style tables in <code>gitbook</code>. I will try to address these issues using this example.</p>
-<p>This book is hosted at <a href="https://github.com/haozhu233/kableExtra/tree/master/docs" class="uri">https://github.com/haozhu233/kableExtra/tree/master/docs</a>.</p>
+<p>This book is hosted at <a href="https://haozhu233.github.io/kableExtra/bookdown/index.html" class="uri">https://haozhu233.github.io/kableExtra/bookdown/index.html</a></p>
 <p>You can download PDF &amp; EPUB to see the results of kableExtra in those formats using the same code.</p>
 <p>You can find the source code for this project at <a href="https://github.com/haozhu233/kableExtra/tree/master/docs" class="uri">https://github.com/haozhu233/kableExtra/tree/master/docs</a>.</p>
 
diff --git a/docs/bookdown/index.md b/docs/bookdown/index.md
index 2ccdad6..1c298a8 100644
--- a/docs/bookdown/index.md
+++ b/docs/bookdown/index.md
@@ -1,7 +1,7 @@
 --- 
 title: "Using kableExtra in Bookdown"
 author: "Hao Zhu"
-date: "2018-10-08"
+date: "2018-10-16"
 site: bookdown::bookdown_site
 documentclass: book
 bibliography: [book.bib, packages.bib]
@@ -14,7 +14,7 @@
 
 If you have tried to use `kableExtra` in a `bookdown` project with mutltiple formats, you may have experienced some problems. For example, you might not be able to render HTML and PDF tables at the same time using the same piece of code. At the same time, you might start to wonder if it's possible to create `bootstrap` style tables in `gitbook`. I will try to address these issues using this example. 
 
-This book is hosted at https://github.com/haozhu233/kableExtra/tree/master/docs.
+This book is hosted at https://haozhu233.github.io/kableExtra/bookdown/index.html
 
 You can download PDF & EPUB to see the results of kableExtra in those formats using the same code. 
 
diff --git a/docs/bookdown/search_index.json b/docs/bookdown/search_index.json
index cc6fb60..004b750 100644
--- a/docs/bookdown/search_index.json
+++ b/docs/bookdown/search_index.json
@@ -1,5 +1,5 @@
 [
-["index.html", "Using kableExtra in Bookdown Chapter 1 Introduction", " Using kableExtra in Bookdown Hao Zhu 2018-10-08 Chapter 1 Introduction If you have tried to use kableExtra in a bookdown project with mutltiple formats, you may have experienced some problems. For example, you might not be able to render HTML and PDF tables at the same time using the same piece of code. At the same time, you might start to wonder if it’s possible to create bootstrap style tables in gitbook. I will try to address these issues using this example. This book is hosted at https://github.com/haozhu233/kableExtra/tree/master/docs. You can download PDF &amp; EPUB to see the results of kableExtra in those formats using the same code. You can find the source code for this project at https://github.com/haozhu233/kableExtra/tree/master/docs. "],
+["index.html", "Using kableExtra in Bookdown Chapter 1 Introduction", " Using kableExtra in Bookdown Hao Zhu 2018-10-16 Chapter 1 Introduction If you have tried to use kableExtra in a bookdown project with mutltiple formats, you may have experienced some problems. For example, you might not be able to render HTML and PDF tables at the same time using the same piece of code. At the same time, you might start to wonder if it’s possible to create bootstrap style tables in gitbook. I will try to address these issues using this example. This book is hosted at https://haozhu233.github.io/kableExtra/bookdown/index.html You can download PDF &amp; EPUB to see the results of kableExtra in those formats using the same code. You can find the source code for this project at https://github.com/haozhu233/kableExtra/tree/master/docs. "],
 ["cross-format-tables-in-bookdown.html", "Chapter 2 Cross-format Tables in Bookdown 2.1 Use the “K-M” approach instead of “M-K” 2.2 Prepare Your Tables for Both Formats", " Chapter 2 Cross-format Tables in Bookdown Note that if kableExtra 0.9.0 doesn’t support the EPUB format. If you need to output tables in .epub, please upgrade to the dev version or version 1.0 on CRAN once it’s released. 2.1 Use the “K-M” approach instead of “M-K” Please read this chapter about the “K-M”/“M-K” approaches in bookdown: https://bookdown.org/yihui/bookdown/new-session.html To generate cross-format tables with kableExtra in a multi-format bookdown project, you will have to use the “M-K” approach by setting new_session: true in _bookdown.yml. Somehow the “M-K” approach, which merges chapters to a big Rmd and then renders, shares the global environment across formats. For now, I’m not sure if this is a bug or intended behavior. It might be fixable in the future but please don’t count on that. By setting new_session: true, we force R to use a new session for every chapter for different formats. In this way, tables are generated differently in different formats. Note that the “M-K” approach is slower than the “K-M” approach. At the same time, packages and data are not shared accross chapter. # Example _bookdown.yml book_filename: &quot;bookdown_example&quot; delete_merged_file: true new_session: true language: ui: chapter_name: &quot;Chapter &quot; 2.2 Prepare Your Tables for Both Formats In most cases, functions in kable and kableExtra use the same API to accomplish the same styling task in HTML and LaTeX. However, you also need some format specific settings so your tables will look good in both formats. Some common items here include the booktabs and longtable settings in kable and the bootstrap_options and latex_options in kable_styling. Here is an example for a table that will work in both HTML and LaTeX. library(kableExtra) options(kableExtra.html.bsTable = T) mtcars[1:5, 1:5] %&gt;% kable(booktabs = T) %&gt;% kable_styling( latex_options = c(&quot;striped&quot;), full_width = F ) %&gt;% column_spec(1, bold = T) %&gt;% add_header_above(c(&quot; &quot;, &quot;Group A&quot; = 2, &quot;Group B&quot; = 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 "],
-["use-bootstrap-tables-in-gitbooks-epub.html", "Chapter 3 Use Bootstrap Tables in gitbooks &amp; epub 3.1 Gitbook 3.2 Epub", " Chapter 3 Use Bootstrap Tables in gitbooks &amp; epub 3.1 Gitbook 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] %&gt;% kable(booktabs = T) %&gt;% kable_styling( bootstrap_options = c(&quot;striped&quot;,&quot;hover&quot;, &quot;bordered&quot;, &quot;condensed&quot;), latex_options = c(&quot;striped&quot;) ) %&gt;% column_spec(1, color = &quot;red&quot;) %&gt;% add_header_above(c(&quot; &quot;, &quot;Group A&quot; = 2, &quot;Group B&quot; = 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 &gt;= 0.7.21) and turn off the table_css option under bookdown::gitbook in _output.yml bookdown::gitbook: table_css: false 3.2 Epub 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 "]
+["use-bootstrap-tables-in-gitbooks-epub.html", "Chapter 3 Use Bootstrap Tables in gitbooks &amp; epub 3.1 Gitbook 3.2 Epub", " Chapter 3 Use Bootstrap Tables in gitbooks &amp; epub 3.1 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] %&gt;% kable(booktabs = T) %&gt;% kable_styling( bootstrap_options = c(&quot;striped&quot;,&quot;hover&quot;, &quot;bordered&quot;, &quot;condensed&quot;), latex_options = c(&quot;striped&quot;) ) %&gt;% column_spec(1, color = &quot;red&quot;) %&gt;% add_header_above(c(&quot; &quot;, &quot;Group A&quot; = 2, &quot;Group B&quot; = 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 &gt;= 0.7.21) and turn off the table_css option under bookdown::gitbook in _output.yml bookdown::gitbook: table_css: false 3.2 Epub 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 "]
 ]
diff --git a/docs/bookdown/use-bootstrap-tables-in-gitbooks-epub.html b/docs/bookdown/use-bootstrap-tables-in-gitbooks-epub.html
index a8c434d..fcc5db5 100644
--- a/docs/bookdown/use-bootstrap-tables-in-gitbooks-epub.html
+++ b/docs/bookdown/use-bootstrap-tables-in-gitbooks-epub.html
@@ -25,7 +25,7 @@
 <meta name="author" content="Hao Zhu">
 
 
-<meta name="date" content="2018-10-08">
+<meta name="date" content="2018-10-16">
 
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <meta name="apple-mobile-web-app-capable" content="yes">
@@ -159,7 +159,7 @@
 <h1><span class="header-section-number">Chapter 3</span> Use Bootstrap Tables in gitbooks &amp; epub</h1>
 <div id="gitbook" class="section level2">
 <h2><span class="header-section-number">3.1</span> Gitbook</h2>
-<p>Most of <code>kableExtra</code> tricks will work in <code>bookdown</code> except those requires <a href="http://getbootstrap.com/"><code>bootstrap</code></a>. By default, <code>rmarkdown</code> won’t load <code>bootstrap</code> for you on gitbook as it’s not necesary. In <code>kableExtra</code>, I used the <a href="https://getbootstrap.com/docs/3.3/customize/">bootstrap 3.3.7 customization tool</a> and made a customized css copy. You can load it by setting <code>options(kableExtra.html.bsTable = T)</code>.</p>
+<p>Most of <code>kableExtra</code> tricks will work in <code>bookdown</code> except those requiring <a href="http://getbootstrap.com/"><code>bootstrap</code></a>. By default, <code>rmarkdown</code> won’t load <code>bootstrap</code> for you on gitbook as it’s not necesary. In <code>kableExtra</code>, I used the <a href="https://getbootstrap.com/docs/3.3/customize/">bootstrap 3.3.7 customization tool</a> and made a customized css copy. You can load it by setting <code>options(kableExtra.html.bsTable = T)</code>.</p>
 <pre class="sourceCode r"><code class="sourceCode r"><span class="kw">library</span>(kableExtra)
 <span class="kw">options</span>(<span class="dt">kableExtra.html.bsTable =</span> T)
 
