我有一个YAML配置文件,可以包含一些CSS用于自定义目的。
css.custom: >
.company-logo {
height: 60px;
padding-top: 15px;
}
.input[type=\"text\"] {
background: white;
border: 1px solid gray;
border-radius: 3px;
}
然后将其呈现在名为base.css.twig
的文件中,如下所示:
{{ css.custom }}
我的问题是,我无法正确呈现input[type=\"text\"]
中的引号,因为反斜杠是按字面呈现的,而引号则呈现为"
。有没有人想过如何成功渲染原始报价?
生成的渲染:
input[type="text"]
答案 0 :(得分:1)
您无法在YAML多行标量字符串中转义任何内容。你不必逃避引号,所以你应该忽略\
:
css.custom: >
.company-logo {
height: 60px;
padding-top: 15px;
}
.input[type="text"] {
background: white;
border: 1px solid gray;
border-radius: 3px;
}
您还应该考虑是否真的需要折叠(>
)而不是文字(|
)样式的多行标量。
folding style is like literal style:
折叠样式由“>”指示符表示。它类似于文字风格;然而,折叠的标量受折线影响。
且the literal style没有逃脱:
无法转义文字标量内的字符。这会将它们限制为可打印字符。此外,没有办法打破长文字线。
答案 1 :(得分:0)
解决方案是使用{{ css.custom|raw }}
我以为我已经在使用raw
,但我错了。