我正在处理的站点使用压缩的 SVG 图像作为 dotnetnuke 站点中按钮的背景图像。DNN 版本是 07.00.00 (1586)。CSS看起来像这样:
a.primaryButton {
background: url(data:image/svg+xml;base64,[data]);
}
注意:我在这里使用了 [data] 而不是实际的压缩文件。
当我在 Host -> Host Settings -> Advanced Settings -> Client Resource Management 中启用复合文件并选中 Minify CSS 和 Minify JS 时,上述背景图像更改为:
a.primaryButton {
background: url(https://mydevsite.com/DependencyHandler.axd/image/svg+xml;base64,[data]);
}
一旦发生这种情况,SVG 背景图像将不再出现。我最初的想法是尝试压缩已经压缩的 SVG 时出现问题。如果我将 url 复制并粘贴到浏览器中,我会收到 400 无效请求响应。为什么在 DNN 中启用复合文件后 SVG 背景图会失效?
先谢谢了。
data:
更新:在考虑了更多之后,在上面的代码中替换 DNN 复合文件处理程序确实没有意义,https://mydevsite.com/DependencyHandler.axd
因此后续问题是,如何防止 DNN 复合文件功能尝试压缩 SVG在 css 代码中用作背景图像的文件?