diff --git a/R/add_header_above.R b/R/add_header_above.R
index 5231c7f..bf99378 100644
--- a/R/add_header_above.R
+++ b/R/add_header_above.R
@@ -68,6 +68,7 @@
   xml_add_child(kable_xml_thead, new_header_row, .where = 0)
   out <- as_kable_xml(kable_xml)
   attributes(out) <- kable_attrs
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
 
diff --git a/R/add_indent.R b/R/add_indent.R
index a0cb37f..8dc2d4d 100644
--- a/R/add_indent.R
+++ b/R/add_indent.R
@@ -87,5 +87,6 @@
   }
   out <- as_kable_xml(kable_xml)
   attributes(out) <- kable_attrs
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
diff --git a/R/collapse_rows.R b/R/collapse_rows.R
index af2c0a5..38a8216 100644
--- a/R/collapse_rows.R
+++ b/R/collapse_rows.R
@@ -66,6 +66,7 @@
 
   out <- as_kable_xml(kable_xml)
   attributes(out) <- kable_attrs
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
 
diff --git a/R/column_spec.R b/R/column_spec.R
index a640a4d..0c351a3 100644
--- a/R/column_spec.R
+++ b/R/column_spec.R
@@ -131,6 +131,7 @@
 
   out <- as_kable_xml(kable_xml)
   attributes(out) <- kable_attrs
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
 
diff --git a/R/footnote.R b/R/footnote.R
index a05360f..bb48e0d 100644
--- a/R/footnote.R
+++ b/R/footnote.R
@@ -147,6 +147,7 @@
 
   out <- as_kable_xml(kable_xml)
   attributes(out) <- kable_attrs
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
 
diff --git a/R/kable_styling.R b/R/kable_styling.R
index bbb8e07..d349120 100644
--- a/R/kable_styling.R
+++ b/R/kable_styling.R
@@ -169,7 +169,7 @@
 
   out <- as_kable_xml(kable_xml)
   attributes(out) <- kable_attrs
-  class(out) <- c("kableExtra", class(out))
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
 
diff --git a/R/print.R b/R/print.R
index 93d0909..cf0de0a 100644
--- a/R/print.R
+++ b/R/print.R
@@ -1,13 +1,12 @@
 #' @export
 print.kableExtra <- function(x) {
+  cat(as.character(x))
   html_header <- htmltools::tags$head(
     rmarkdown::html_dependency_jquery(),
     rmarkdown::html_dependency_bootstrap(theme = "simplex"),
     html_dependency_kePrint()
   )
-
   html_table <- htmltools::HTML(as.character(x))
-  cat(as.character(x))
   htmltools::html_print(htmltools::tagList(html_header, html_table))
 }
 
diff --git a/R/row_spec.R b/R/row_spec.R
index deedf68..88bf499 100644
--- a/R/row_spec.R
+++ b/R/row_spec.R
@@ -97,6 +97,7 @@
 
   out <- as_kable_xml(kable_xml)
   attributes(out) <- kable_attrs
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
 
diff --git a/R/scroll_box.R b/R/scroll_box.R
index 9cf85d3..44bd096 100644
--- a/R/scroll_box.R
+++ b/R/scroll_box.R
@@ -29,5 +29,6 @@
   out <- structure(out, format = "html",
                    class = "knitr_kable")
   attributes(out) <- kable_attrs
+  if (!"kableExtra" %in% class(out)) class(out) <- c("kableExtra", class(out))
   return(out)
 }
