|
发表于 2015-10-18 13:11:40
|
显示全部楼层
itarcy 发表于 2015-10-18 10:482 B" q( w0 p7 @" C! e+ D5 \( N$ ?* x) H
新问题又来了,继续请教
% U' n) ^% f2 h3 _. H6 _2 b0 ~. J6 c
1. 发现换了Windows 10以后,goldendict新加入的词典,css和mdd里面的css都不能 ... $ I" s) p5 w$ @2 f& a
1、mdd里的css不识别的问题
5 r4 A* W, ] r% B; e- v( q如果只替换mdd,而未同时替换mdx,则有可能出现虽然同名但就是不认新mdd的情况
& _; z+ }3 G0 ^5 m7 u4 `3 g" X4 \解决方法:
! G1 M7 R% S7 K, L; `把该mdx+mdd同时移出词典目录,重新打开goldendict(这时候goldendict会删除原先旧的缓存),再关闭# g' r" z& Y6 ?2 V, E: r8 L
然后再把该mdx+mdd移入词典目录,再打开goldendict(这时候goldendict会生成新缓存),就好了;
* [& r) t2 z$ x- ?% X; U4 f4 K3 L+ _" m
2、font-face
' Y- g8 ] c+ j( E7 @" |不是不支持font-face,而不支持在CSS或javascript里动态加载资源(字体文件、图片文件、音频文件等)6 Q! D! H) K" b4 y' x# o
url('...')这种写法就属于动态加载资源
) j1 E, f, s- _: I原因是goldendict/欧路/mdict等软件加载mdd时,会生成一个虚拟(或临时)目录来保存mdd里的资源% z; n* @9 \2 l/ A
然后加载mdx时,会把HTML文本里的所有资源路径替换为虚拟(或临时)目录的路径
) F) A' e `; m: N但是写在css或javascript里的资源路径却没有替换,所以就出现找不到资源的情况
$ a0 z1 E i# h) w(即使把相关的css代码写进HTML文本里也不行,因为词典软件设计的时候没考虑到替换url('...'),所以还是不会替换)" u$ r- s o6 x( X
要彻底解决这个问题,需要改词典软件的代码
+ y# U* N/ }' K# }4 m- o2 u; Z) G2 ]不过如果文件尺寸比较小(<100字节),也可以考虑把文件转化为base64编码的字符串,然后url('base64...'),这样是可以加载的# `9 ~" r$ o" {: A1 h
|
|