IE7中英文混合文本的字体样式控制问题,使用js解决
2013-04-28 10:56
751 查看
上码:
以上代码在ie7和其他浏览器浏览会有区别
IE9、Chrome或FireFox
IE7:
文本是中英混合的,想要使用不同的字体,在IE8以上版本或其他主流浏览器上,css支持这种写法
body{font-family: Verdana, 幼圆;}
但是可惜ie7不给力,就是没有效果。
无奈只能使用js来变通一下了
再上码:
主要通过js判断需要判断的文本,使用class ="fontCNEN"定义,通过正则式查找替换之。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html class="ext-strict"> <head><meta http-equiv="content-type" content="text/html; charset=UTF-8"> <style> body{font-family: Verdana, 幼圆;} </style> </head> <body> <div id="content"> <div> 欢迎大家光临,We to may Website. 测试中文,Test English。 </div> <hr/> <div style="font-family:'幼圆';"> 欢迎大家光临,We to may Website. 测试中文,Test English。 </div> <hr /> <div style="font-family: Verdana;"> 欢迎大家光临,We to may Website. 测试中文,Test English。 </div> </div> </body> </html>
以上代码在ie7和其他浏览器浏览会有区别
IE9、Chrome或FireFox
IE7:
文本是中英混合的,想要使用不同的字体,在IE8以上版本或其他主流浏览器上,css支持这种写法
body{font-family: Verdana, 幼圆;}
但是可惜ie7不给力,就是没有效果。
无奈只能使用js来变通一下了
再上码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html class="ext-strict"> <head><meta http-equiv="content-type" content="text/html; charset=UTF-8"> <style> body{font-family: Verdana, 幼圆;} </style> <style> span.fontCN{ font-family:"幼圆"; } </style> <script src="jquery-1.3.2.min.js" ></script> <script> $(document).ready(function(){ alert($.browser.version); if($.browser.version > 7.0){ }else{ SetFonts(); } }); function replacCN() { if(arguments.length > 0){ return "<span class='fontCN'>" + arguments[0] + "</span>"; } return ""; } function SetFonts(){ //中文字体规则 var reg = /[\u4e00-\u9fa5]+/g; $(".fontCNEN").each(function(){ var content= $(this).text(); //alert(content); content=content.replace(reg, replacCN); //把中文替换成 <span>中文</span> //alert(content); $(this).html(content); }); } </script> </head> <body> <div id="content"> <div class="fontCNEN"> 欢迎大家光临,We to may Website. 测试中文,Test English。 </div> <hr/> <div style="font-family:'幼圆';"> 欢迎大家光临,We to may Website. 测试中文,Test English。 </div> <hr /> <div style="font-family: Verdana;"> 欢迎大家光临,We to may Website. 测试中文,Test English。 </div> </div> </body> </html>
主要通过js判断需要判断的文本,使用class ="fontCNEN"定义,通过正则式查找替换之。
相关文章推荐
- 移动端网页使用flexible.js加入百度联盟广告样式不一致问题解决
- 解决vue.js使用ckeditor的样式路径问题
- 解决ie7和360不兼容的样式和js等问题。
- 49 Three.js使用THREE.TextGeometry创建三维文本解决中文乱码的问题
- flash embed fonts–动态创建文本时嵌入字体_解决_rotation和_alpha不能使用的问题
- MFC使用CEF并实现js与C++交互功能,解决Render进程中OnContextCreated绑定与OnWebKitInitialized的js扩展无法回调问题
- 使用live delegate on解决js后装html故障问题
- 优化 html 标签 为何能用HTML/CSS解决的问题就不要使用JS?
- eclipse使用github实现版本控制,轻松解决代码管理问题
- 解决使用GOOGLE字体网站访问慢的问题
- Selenium Webdriver 的使用java执行js代码 解决 ScriptEngine不支持浏览器内置对象window,document的问题
- 大一上学期C++第11周实验报告(三)学会使用循环控制语句解决实际问题
- Text Autosizer&&解决移动端网页文本字体怪异增大问题
- IE浏览器下面 使用 JS的getDate()方法获取星期几出现Nan问题的解决办法
- 使用js控制表单重复提交(1加锁,2事件方式,3 EasyUI中解决表单重复提交)
- mac中android studio使用svn版本控制遇到的坑及问题解决
- 学会使用循环控制语句解决实际问题
- 解决“UIkit与Vue.js结合使用时,UIkit的图标会显示两个”的问题
- 【转载】解决IE6、IE7、IE8样式不兼容问题
- 使用poi做excel导出时解决以文本格式存储的数字问题