Re: [問題] 同一網頁裡,中文英文各自使用一種字型
※ 引述《DJWS (...)》之銘言:
: 我寫了以下程式碼:
: <style type="text/css">
: .f {
: font-family: "Book Antiqua", "標楷體";
: font-size: 5em;
: }
: </style>
: <span class="f">中文字中間有English text,之後又有一些English text。</span>
: IE在中文字的地方都會變成細明體
: FF則可以同時顯示兩種字型 (先前有疏忽,非常抱歉)
: 有辦法讓IE同時顯示兩種字型嗎?
後來我成功的做出來了
最初的想法是:
利用 innerHTML 擷取文字資料
搭配 JavaScript ,將所有英文句子的部份找出來,
並在前後插入 HTML 標籤 <span class="eng_style"> ... </span> 來修改英文字體
(我也順便在前後都加了一個空格,讓英文不會跟中文擠在一起)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
JavaScript 的程式碼很短 (注意:我的文字資料都會放在<p>標籤之內,
<p>之外的地方不會受到這個程式的影響。)
english.js
var re = /([!-~]+)/gi;
var p = document.getElementsByTagName('p');
for (var i=0; i<p.length; i++)
p[i].innerHTML =
p[i].innerHTML.replace(re, " <span class=\"eng_style\">$1</span> ");
然後在原網頁內容的最後一行加上 (注意:最好是放在在body之內。)
<script language="javascript" src="english.js"></script>
這樣就搞定了~
IE 和 FF 都可以用唷~
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
這裡附上我的參考資料:
JavaScript 程式設計與應用:用戶端
章節 10-1, 10-2, 10-3
http://neural.cs.nthu.edu.tw/jang/books/javascript/
Regular Expressions (from Netscape JavaScript guide)
章節 Using Parenthesized Substring Matches
http://www.websina.com/bugzero/kb/regexp.html
祝各位排版順利~ :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.90.81
※ 編輯: DJWS 來自: 140.112.90.81 (06/29 15:08)
※ 編輯: DJWS 來自: 140.112.90.81 (06/29 15:17)
※ 編輯: DJWS 來自: 140.112.90.81 (06/29 15:55)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):