|
发表于 2016-3-11 10:36:01
|
显示全部楼层
本帖最后由 gnoweb 于 2016-3-11 10:45 编辑 2 ^3 C$ J5 Y6 _8 z2 q" ]
$ s9 B2 H3 @2 S W5 {1 q) ~" L
举例来说,如果你的 CSS 文件放在 /sdcard/Mdict/doc/style.css 这里,你要用 /sdcard/Mdict/fonts/ip769292.TTF,那 CSS 文件里面就要写成:
5 z7 r& A1 m) U: z7 I" `8 V8 x" m, c
src: url('/sdcard/Mdict/fonts/ip769292.TTF');
; S* h" B5 f7 Q- z. j( {
7 M- a" f# C9 E! s8 r! M或) B; r( I1 U+ u
. T, r' B3 H; s4 S
src: url('../fonts/ip769292.TTF');) }. G3 ~" j, B9 L9 R4 Z/ Y% s, t% M/ q1 ^
- [0 |2 O V8 S5 r. i5 L
file:/// 这种前缀,貌似 Android 上没这样用的,是 Windows 下的写法吧。
: ~/ P4 Z$ S/ I9 j* m% m& r
+ O1 ?' ~" v1 J3 W. q3 c# m另外,即使你 CSS 都设置好了,也不会工作的。因为你的 CSS 文件里面,还没有为 font 标签指定字体,必须要为 HTML 标记指定样式规则才可以出来效果。所以应该加上:
& w6 x8 U' Q& x7 J# Y8 v
" m# { C* x: Z" Z1 U8 ]: q, S4 vfont {
" f. }, c$ X$ T, h font-family: 'Ipa-samd Uclphon1 SILDoulosL';' R5 e. j% q! \) ]* G
}
3 y+ x' j. h* a* R" ~7 S
7 c1 x" A; ], J1 p3 k才行。
8 D+ `$ ~& l" ^- G. G( I; p9 C% t+ I0 \5 N5 U) w: Y
但是问题来了:
+ o- }$ y) J; b/ ~1 [" R+ E7 X- M. {1 D/ I& t
我们这样写的话,对于 font 这个标记来说,浏览器会看到两个规则:
: T; p# K' M4 H9 {" H
" R, S+ d- M: m* K, r, Rface='Ipa-samd Uclphon1 SILDoulosL' $ P, Q- {) W0 f: g/ s9 T# k) |) V
style="font-family: 'Ipa-samd Uclphon1 SILDoulosL';" (从外部 CSS 文件读到的规则)4 c& t Q/ O" l: N
; l( f6 S: l3 R6 J Y8 i: T, O+ L0 s这时浏览器怎么处理?如果它选第一个,抛弃第二个,那么,浏览器它肯定找不到 'Ipa-samd Uclphon1 SILDoulosL' 这个字体,这样就没效果了。
) S( {/ Y% v+ V V4 i) @. U2 r4 }7 b如果它选第二个,抛弃第一个,那一切完美,因为它可以从 CSS 文件里的路径信息那里得到它需要的字体。8 i# J3 D! T+ o5 P) ^7 x j
或者它觉得两个规则不好选,那就干脆全部都抛弃,那和选第一个规则后的结局相同。! L% V- U4 x; Y7 o) j) d
; g$ Y. ^5 {6 n0 H1 Q5 ~
<FONT face='Ipa-samd Uclphon1 SILDoulosL'> 这个东西,HTML 的 font 标签,HTML 3.2 里面正常的东西, HTML 4.01 已经不推荐使用了,HTML 5 已经把它列为淘汰过时的元素标记了,所以不保证以后所有的浏览器都能支持。另外,最主要的是,它已经被 w3c 抛弃,对 CSS 来说,FONT 已死,CSS 与 FONT 组合用的话行为无法预测,因为从来没人会把 CSS 样式与 FONT 标签组合起来用,一般是与 SPAN 或 DIV 之类的组合。$ L) c0 n B% T R
1 D/ M Y4 j, F+ o3 J所以如果在手机上没效果的话,你要解包 MDX,把 FONT 标记替换为 SPAN,把 face 属性及里面的字体信息都删掉。改成如下类似的形式:
- S; x; S6 j& \. x+ W. F6 I" r
. ~4 ^2 k J5 L: C6 w, a X7 k<span class="ipa">...</span>0 ?1 p( {. ~6 @
/ W4 T2 M$ } p; G8 K
; J. b; B# V! e( H( a7 S2 X把 CSS 里面加上:7 L4 a7 a* ? W4 ?/ _* _' T3 c2 s
0 G- j; O. T. M& e; W# [.ipa {- {) ^( b2 O) i0 Y9 L! i7 E6 {% ~
font-family: 'Ipa-samd Uclphon1 SILDoulosL';. g7 ~8 S4 s7 ?2 z' G
}
G) F' v% u5 Z. A5 i: d0 G( ^# Y J- A
才行。4 M! |! _* a4 G8 }
3 |$ E) f1 l$ a& E8 \4 h' h$ q: Z
, }4 B }- ]( L* P* P# g) F! A( q0 A* q- W @
|
|