TJ.*_*TJ. 5 css base64 data-uri aem
我试图使用data-uri-scheme将自定义字体包含到css中.CQ5(我使用的是5.5版)是将clientlib目录中的路径添加到带有data-uri-scheme字体数据的css文件所在的位置.
所以不要只是忽略css属性:
@font-face {
font-family: 'CustomFont';
src: url(data:application/x-font-woff;...
...
}
Run Code Online (Sandbox Code Playgroud)
CQ5执行以下操作:
@font-face {
font-family: 'CustomFont';
src: url(desktop/css/data:application/x-font-woff;...
...
}
Run Code Online (Sandbox Code Playgroud)
这是CQ5.5中的错误还是可以添加/执行某些操作以防止添加"desktop/css"?
结果是,我得到404 HTTP状态,因为字体"找不到".
[更新]:
css文件包含在base.jsphtml <head>部分中.
<link rel="stylesheet"
href="/etc/designs/myproject/clientlib/desktop.css" type="text/css"/ >
Run Code Online (Sandbox Code Playgroud)
位置base.jsp:
/apps/myproject/pages/base/base.jsp
Run Code Online (Sandbox Code Playgroud)
位置css.txt:
/etc/designs/myproject/clientlib/desktop/css.txt
Run Code Online (Sandbox Code Playgroud)
这是一个错误,将在 5.6 中修复。直接包含单个 css 文件(如上所述)可以避免 clientlib 重写,否则我不知道 clientlib 内有解决方法。
原因是 clientlibs 正在重写相对路径,因为基础从单独的 css 文件更改为串联的 clientlib css。“数据:”这里根本没有正确考虑 uri。