簡體   English   中英

R markdown 中 kableExtra 表的彈出框/工具提示中的換行符

[英]Line break in popover/tooltip of kableExtra table in R markdown

我想在將鼠標懸停在表格的單元格上時在彈出顯示中顯示文本。 那行得通,但是,我無法在該文本中換行。 我的例子改編自這里: https://haozhu233.github.io/kableExtra/awesome_table_in_html.ZFC35FDC70D5FC69D269883A822C7A5E3

---
title: "Line break in popover"
output: html_document
---

<script>
$(document).ready(function(){
    $('[data-toggle="popover"]').popover(); 
});

</script>

```{r echo = FALSE}

knitr::opts_chunk$set(echo = TRUE)
library(kableExtra)

popover_dt <- data.frame(
  position = c("top", "bottom", "right", "left"),
  stringsAsFactors = FALSE
)
popover_dt$`Hover over these items` <- cell_spec(
  paste("Message on", popover_dt$position), # Cell texts
  popover = spec_popover(content = c("line\nbreak", "line<br/>break", "line&#013;break", "line&#10;break")))

kbl(popover_dt, escape = FALSE) %>%
  kable_paper("striped", full_width = FALSE)

```

但是,我沒有開始工作的是在彈出窗口中換行和換行。 我試過\n<br>&#013; , 和&#10; . 似乎沒有任何嘗試有效。 知道如何解決這個問題嗎?

在此處輸入圖像描述

html: true添加到您的 javascript 中:

<script>
$(document).ready(function(){
    $('[data-toggle="popover"]').popover({html: true}); 
});
</script>

那么<br/>應該提供一個換行符。

您可以將自定義 css 樣式添加到文檔中,請參閱此解決方案

---
title: "Line break in popover"
output: html_document
---

<script>
$(document).ready(function(){
    $('[data-toggle="popover"]').popover(); 
});
</script>

```{css, echo=FALSE}
div {
  white-space: pre-wrap;
}
```

```{r echo = FALSE}

knitr::opts_chunk$set(echo = TRUE)
library(kableExtra)



popover_dt <- data.frame(
  position = c("top", "bottom", "right", "left"),
  stringsAsFactors = FALSE
)
popover_dt$`Hover over these items` <- cell_spec(
  paste("Message on", popover_dt$position), # Cell texts
  popover = spec_popover(content = c("line\nbreak", "line<br>break", "line&#013;break", "line&#10;break")))

kbl(popover_dt, escape = FALSE) %>%
  kable_paper("striped", full_width = FALSE)

```

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM