我正在使用XWiki的实例,该实例正在过滤掉<style>
标签,这意味着以下内容:
<style>
p { color: red; }
</style>
<p>Foo</p>
将在渲染时完全删除<style>
标签,结果仅为:
<p>Foo</p>
我能够使用以下语法进行内联样式:
(% style="color: red;" %)
<p>Foo</p>
但是当我尝试使用动画关键帧时,我的问题出现了。我知道它们可以在样式标签内完成:
<style>
@keyframes stomp {
0% { transform: translate(1px, 1px) rotate(0deg); }
50% { transform: translate(-1px, 2px) rotate(1deg); }
100% { transform: translate(1px, -2px) rotate(-1deg); }
}
</style>
但是我不知道如何内联它,因为 XWiki 将删除<style>
标签。
的问题:我怎么做...
- 将关键帧内联到元素样式中(我不相信这可以做到,但这个问题已经很老了(?
- 混淆
<style>
标签,使其不被剥离?
样式标签不应该放在HTML的正文中(至少在HTML4中不是(。您在 wiki 页面内容的 {{html}} 宏中插入的所有 HTML 都会进入 HTML 的正文。这就是为什么HTML清理器可能会过滤/删除您的内容。
您应该查看并了解通过JavaScriptExtensions或StyleSheetExtensions将JavaScript和CSS添加到XWiki中的wiki页面的正确方法。更一般地说,尽量避免内联。这被认为是一种不好的做法,在实践中几乎没有道理。
如果确实必须在 HTML 正文中包含样式标记,则可以使用 clean="false" 参数指示 {{html}} 宏避免自动清理。
例:
{{html clean="false"}}
<style>
...
</style>
{{/html}}
但是,我建议您仅将上述内容用于测试目的,并为最终版本使用适当的JavaScript/Style Extension。