我有一个文档,在其中创建了许多流程图,这些流程图共享其项目的样式和颜色的共同图例。例如:
graph TB
classDef client fill:#D5E8D4,stroke:#82B366,color:#000000;
classDef utility fill:#E1D5E7,stroke:#9673A6,color:#000000;
classDef resource fill:#DAE8FC,stroke:#6C8EBF,color:#000000,stroke-dasharray: 3 3;
<!-- and more -->
Run Code Online (Sandbox Code Playgroud)
现在,我需要将这些添加classDef到我制作的每个流程图中。复制并粘贴它们并不是世界末日,但是当您有二十个流程图以使它们全部使用相同的样式定义时,这并不是最好的。
有没有什么方法可以指定classDef在同一类型的所有图表之间共享的每个文档的 s 或样式集?
为此,Mermaid 允许使用 CSS:您声明 CSS 类一次,然后在任何 Mermaid 定义中使用它们,就像使用classDef. 额外的好处:您实际上可以在样式所属的位置声明样式(*.css文件或直接在<style>标记中)。
JSFiddle 上的示例:https://jsfiddle.net/negbsw0v/
CSS 中的某处:
.client > rect {
fill: #D5E8D4 !important;
stroke: #82B366 !important;
color: #000000 !important;
}
.utility > rect {
...
}
.resource > rect {
...
}
Run Code Online (Sandbox Code Playgroud)
在美人鱼的定义中:
graph TB
A --> C
B --> C
class A client
class B resource
class C utility
Run Code Online (Sandbox Code Playgroud)
相关文档:http://mermaid-js.github.io/mermaid/#/flowchart ?id=css-classes
注意:正如您在上面看到的,与文档建议的不同,!important指令被添加到某些样式定义中,因为如果不添加,Mermaid CSS 优先于自定义 CSS。至少在当前版本的 Meramaid (8.8.3) 的 Firefox 中是这样。
| 归档时间: |
|
| 查看次数: |
6407 次 |
| 最近记录: |