R语言 将颜色引用为夸托分之一格式内联CSS中的命名矢量

dba5bblo  于 2022-12-24  发布在  其他
关注(0)|答案(2)|浏览(125)

我正在玩夸托,我真的很喜欢它。一个特性是用下面的语法来改变内联文本的颜色(单词chemical将显示为红色)

[chemical]{style="color: red"}

我的问题是如何改变文本的颜色,如果我们分配一个颜色的名称,而不是颜色代码或内置的颜色代码?

var="#28A569"
[chemical]{style="color: var"}
ni65a41a

ni65a41a1#

不确定夸托是否提供了更直接的方法。但一个选择是使用一些内联代码或遵循R Markdown食谱使用一个小的自定义函数。

---
title: "Untitled"
format: html
---

[chemical]{style="color: #28A569"}

```{r, echo=FALSE}
var <- "#28A569"

r sprintf('[chemical]{style="color: %s"}', var)

colorize <- function(x, color) {
  sprintf('[%s]{style="color: %s"}', x, color)
}

r colorize("chemical", var)


![](https://i.stack.imgur.com/5wopS.png)
dpiehjr4

dpiehjr42#

一个简单的选择是使用CSS变量来实现这一点。

---
title: CSS variable in Inline Style
format: html
engine: knitr
---

```{css, echo=FALSE}
:root {
  --color1: #28A569;
  --color2: yellow;
}

[chemical]{style="color: var(--color1);"}

[This has colored background]{style="background-color: var(--color1);"}

[This has yellow background]{style="background-color: var(--color2);"}


![](https://i.stack.imgur.com/eCQzt.jpg)

相关问题