In my shiny app I display a table (reactable) with an expandable row. I would like to change the background color for certain words, therefor I use html spans. It works fine for the text in the regular row, in the expandable row however only the plain html code is displayed.
I set html = TRUE
for both columns yet is not displayed correctly. How do I make it work?
app.R
library(shiny)
library(htmltools)
library(reactable)
ui <- fluidPage(
reactableOutput("table")
)
server <- function(input, output) {
output$table <- renderReactable({
df = data.frame("title" = c("This is the <span style='background-color:yellow;'>Title</span>", "This is a longer Title"),
"abstract" = c("This is the <span style='background-color:yellow;'>abstract</span>", "This is an even longer abstract"))
reactable(
df,
columns = list(
abstract = colDef(show = F, html = TRUE),
title = colDef( html = TRUE)
),
details = function(index) {
htmltools::div(style= "background-color:white",
htmltools::tags$div(style= "background-color:#eee; padding: .9em; border-color: #ffe;", df[index, "abstract"])
)
}
)
})
}