R markdown:如何用内部css改变风格?

GL_*_*_Li 3 css markdown r knitr

我知道如何使用自定义css文件更改R markdown样式.但是,当更改很小时,我更喜欢内部或内联css,以节省管理两个文件的麻烦.我用谷歌搜索,并没有找到解决方案.下面是使用外部css文件更改样式的简单示例.有没有办法用内部或内联css做到这一点?

R降价文件:

---
title: "test"
output: 
    html_document:
        css: test.css
---

## Header 1 {#header1}
But how to change style with internal css?
Run Code Online (Sandbox Code Playgroud)

test.css文件:

#header1 {
color: red;
}
Run Code Online (Sandbox Code Playgroud)

Way*_*lan 8

Markdown接受原始HTML并将其传递给未更改的内容,因此将"样式化"元素定义为HTML:

<h2 style="color: red;">Header 1</h2>
Run Code Online (Sandbox Code Playgroud)

当然,有些工具实际上并不允许原始HTML传递(出于安全原因或最终输出不是HTML),因此您的里程可能会有所不同.

根据您使用的Markdown实现,您可以在属性列表中定义样式(如果它支持任意键):

## Header 1 {style="color: red;"}
Run Code Online (Sandbox Code Playgroud)

但是,这是最不可能工作的.

请记住,HTML <style>标记不需要在文档<head>中工作.如果您可以使用原始HTML,则可以<style>在文档正文中包含一个元素(如注释中@ user5219763所指出的):

---
title: "test"
output: 
    html_document
---

<style>
    #header1 {
        color: red;
    }
</style>

## Header 1 {#header1}
But how to change style with internal css?
Run Code Online (Sandbox Code Playgroud)

  • 可以直接在markdown文件中包含css,以便将它应用于所有元素`--- title:"test"输出:html_document --- <style>#header1 {color :红色; } </ style> ##标题1 {#header1}` (2认同)

小智 5

如果您不想创建外部 .css 文件,但想定义多种样式并且希望让代码不那么拥挤,另一种可能性是在 R markdown 的开头使用css块:

  ---
  title: "test"
  output: html_document
  ---

  ```{css, echo = FALSE}

  #header1 {
  color: red;
  }

  ```

  ## Header 1 {#header1}
Run Code Online (Sandbox Code Playgroud)

css块中,您可以控制多种样式,就像在外部 .css 文件中一样。