办法:多语言版本Web系统中对应多种字体(Font Family)。
2012-06-12 16:02
357 查看
呆成都这半年下来,发现这边用户的需求真的是取之不竭。
为了不耽误日程,俺们必然要竭尽所能。
这次用户提出:切换至外文时 使用 MS Gothic 字体。
解析一下:
中文界面 ---> 默认字体
外文界面 ---> MS Gothic
一些背景:
双语是用DOTNET的资源文件解决的。
90%的页面有使用母版页。
项目组每个人都很疲惫,这次我只求快速简便够用。
区分CultureInfo中的语种[Culture_LanguageKey]保存在Session中
办法思路:
1、清除所有CSS文件中的 字体 属性。
2、写俩全局CSS文件,一个为默认的中文式样,一个是外文的式样。
3、在母版页用JS根据语种选择加载CSS文件。
石马:
中文CSS文件:fontFamilyStyle_CN.css
*{ font-family:新宋体;}///想要的默认字体
外文CSS文件:fontFamilyStyle_FN.css
*{ font-family:MS Gothic;}
MasterPage.Page
<script type="text/javascript">
///根据语言初始化Font Family 强兼容性
function initFontFamily() {
var language = '<%=Session["Culture_LanguageKey"]%>';///脚本获取Session变量
var cssFileName; ///根据语言设置css文件路径
///FN:外文 -- CN:中文
if (language == "FN") {
cssFileName = "../CSS/fontFamilyStyle_FN.css";
} else {
cssFileName = "../CSS/fontFamilyStyle_CN.css";
}
if (document.createStyleSheet) {//IE浏览器插入样式文件
document.createStyleSheet(cssFileName, 1);
}
else { //其他浏览器插入样式文件
var css_link = document.createElement("link");
css_link.setAttribute("type", "text/css");
css_link.setAttribute("rel", "stylesheet");
css_link.setAttribute("href", cssFileName);
document.getElementsByTagName("head")[0].appendChild(css_link);
}
}
///随意调用下就OK,无需指定到body的onload
initFontFamily();
</script>
结束。
简单测试了下,没有问题。
没有更多要说的了。
为了不耽误日程,俺们必然要竭尽所能。
这次用户提出:切换至外文时 使用 MS Gothic 字体。
解析一下:
中文界面 ---> 默认字体
外文界面 ---> MS Gothic
一些背景:
双语是用DOTNET的资源文件解决的。
90%的页面有使用母版页。
项目组每个人都很疲惫,这次我只求快速简便够用。
区分CultureInfo中的语种[Culture_LanguageKey]保存在Session中
办法思路:
1、清除所有CSS文件中的 字体 属性。
2、写俩全局CSS文件,一个为默认的中文式样,一个是外文的式样。
3、在母版页用JS根据语种选择加载CSS文件。
石马:
中文CSS文件:fontFamilyStyle_CN.css
*{ font-family:新宋体;}///想要的默认字体
外文CSS文件:fontFamilyStyle_FN.css
*{ font-family:MS Gothic;}
MasterPage.Page
<script type="text/javascript">
///根据语言初始化Font Family 强兼容性
function initFontFamily() {
var language = '<%=Session["Culture_LanguageKey"]%>';///脚本获取Session变量
var cssFileName; ///根据语言设置css文件路径
///FN:外文 -- CN:中文
if (language == "FN") {
cssFileName = "../CSS/fontFamilyStyle_FN.css";
} else {
cssFileName = "../CSS/fontFamilyStyle_CN.css";
}
if (document.createStyleSheet) {//IE浏览器插入样式文件
document.createStyleSheet(cssFileName, 1);
}
else { //其他浏览器插入样式文件
var css_link = document.createElement("link");
css_link.setAttribute("type", "text/css");
css_link.setAttribute("rel", "stylesheet");
css_link.setAttribute("href", cssFileName);
document.getElementsByTagName("head")[0].appendChild(css_link);
}
}
///随意调用下就OK,无需指定到body的onload
initFontFamily();
</script>
结束。
简单测试了下,没有问题。
没有更多要说的了。
相关文章推荐
- 【ttf压缩】网页开发中引入字体文件过大,加载缓慢的解决办法【字蛛】【web Font】
- 多种格式多种字体版本的条形码控件USPS Postnet & Intelligent Mail Barcode Font Package
- font-family的中文字体对应英文写法
- CSS font-family常见中文字体对应的英文名称
- eclipse中导入web项目变成java项目解决办法and dynamic web module和对应的TOMCAT 版本
- android webview中的html代码 @media screen 在低版本系统下显示不正常的解决办法
- 【ttf 压缩】html网页引用中文字体,文件过大,加载缓慢的解决办法【字蛛】【web font】
- web中文字体Font-family应该写什么?
- iPhone retina屏的系统字体对应像素高
- css font-family常用字体中英文对照表
- myeclipse高版本对应tomcat低版本解决办法
- Linux系统挂载NTFS分区(无kernel-ntfs对应版本包)
- STS项目更正 web与jdk版本不对应等问题
- HTML font-family 中文字体的英文
- Android 系统名字、版本、API level的对应关系
- iOS项目开发中 webView 服务器返回来一堆不标准的html 语言 处理办法
- css基础 font-family 字体不同,特殊符号的样式不同
- wps for linux出现“系统缺失字体”错误提示的解决办法。
- 在前端页面中使用@font-face来显示web自定义字体【转】