I learned from many advanced users online indicate that Firefox tends to use combined font setting while decoding an UTF-8 encoded page. Although I can't really understand how it works, I tried out a configure suited my laptop (trial and error, of course).
Here is my font setting for Firefox. It works fine with all BIG5, UTF-8 encoding webpages to me. Of course I copy some fonts from my Windows XP into Ubuntu first, like "Tahoma" and "微軟正黑體".
1. open a new tab and type "about:config" in the address bar.
2. type "font" in the filter bar.
3. find variables listed below and change their value
font.default.x-unicode Tahoma
font.minimum-size.x-unicode 13
font.minimum-size.x-western 13
font.minimum-size.zh-CN 13
font.minimum-size.zh-TW 13
font.name.monospace.x-unicode 文泉驛正黑
font.name.monospace.x-western 文泉驛正黑
font.name-monospace.zh-CN Tahoma
font.name-monospace.zh-TW WenQuanYi Bitmap Song
font.name.sans-serif.x-unicode 文泉驛正黑
font.name.sans-serif.x-western Tahoma
font.name.sans-serifzh-CN 微軟正黑體
font.name.sans-serif.zh-TW WenQuanYi Bitmap Song
font.name.serif.x-unicode 文泉驛正黑
font.name.serif.x-western Tahoma
font.name.serif.zh-CN 微軟正黑體
font.name.serif.zh-TW WenQuanYi Bitmap Song
font.size.fixed.x-unicode 13
font.size.fixed.zh-CN 13
font.size.fixed.zh-TW 13
font.size.variable.x-western 13
font.size.variable.zh-CN 13
font.size.variable.zh-TW 13