全局字体最佳实践
来源:曾加高端品牌网站设计 发布时间:2009-08-13 14:37:00
body {font-family: Arial, sans-serif; }
这是我迄今发现的最好的全局字体解决方案。当然,所谓“最好”,也只是基于我个人的评判标准。所以我还是得分析一下其他的写法有什么缺点,最后再总结这个写法的特点。
body {font-family: "宋体", sans-serif; }
这个写法可能的缺点在于:
1. 宋体在Safari和Vista的IE 7下,看起来很难看。
2. 宋体的英文字很难看。
3. 如果在CSS里写中文,你得小心你HTML和CSS的编码是否一致。
body {font-family: SimSun,sans-serif; }
这样写,可以避免上面的第三个问题。但是宋体本身确实很难看。我们希望在不同平台下,都用各自默认的字体。XP是宋体,Vista是微软雅黑,Mac是黑体。这样的话,只能将字体的第一个设置为英文字体,这样遇到中文的时候,浏览器会自动调用默认字体(Vista IE 7的一些版本里貌似默认还是宋体,这个我就无能为力了,交给用户设置的自主权吧)
body {font-family: Tahoma, sans-serif; }
这是一个不错的解决办法。Tahoma其实是一个挺漂亮的字体(我同事喜欢称它“大河马”,哈哈)。但是它其实会带来一些问题:
1. 由Tahoma显示的中文,在IE 6里,下划线会紧紧的贴住中文字,很难看。
2. IE 6下,Tahoma无法正确的设定为13px。它会跟14px一样大。但是其他浏览器没有这个问题。
3. 如果一行里同时出现中文和英文,且这一行里有元素被定义了vertical-align属性,在IE 6、7里会导致文字高低不齐,甚至下划线错位。
body {font-family: Arial, ans-serif; }
上述两个问题,Arial都没有。但是Arial也有缺点:
1. 比Tahoma难看。
2. Tahoma里的第三个问题也同样存在。
不过,这个bug是有个解决办法的,就是将这一行定义zoom:1。
所以,如果不嫌难看,定义为Arial是最合适的。如果实在不喜欢,可以将全局定义为Tahoma,然后再将有下划线的(如链接)文字定义为Arial,至少可以缓解一下。
最后,对于全局字体,补充一点:IE里,所有的表单元素都不继承body的字体属性,需要单独设置:
input, label, select, option, textarea, button, fieldset, legend {
font-family:Tahoma,sans-serif;


猜你喜欢
- 随着互联网产业的飞速发展和电子产业的飞速发展,人们的社交似乎离不开网络,这就应运了SNS的飞速发展。从打开QQ空间关注朋友们的动态,最近心情
- 首先是对一元函数求积分,使用Scipy下的integrate函数:from scipy import integratedef g(x):
- 所以特意写了这个配置文档,相信按照以下步骤你一定会成功的.错误的地方也希望各位指正. 本例是在wiondws XP下 php5.2.1(zi
- 一.Pygame程序基本搭建过程Pygame搭建游戏窗口主要为如下几步1.初始化化程序在使用Pygame编程之前,我们要对程序进行初始化,代
- 开发目标:实现小红帽所挂脚本的自动生成下图为生成的最终目标本项目是从json中读取角色场景等信息,因此为了更好地判断所用属性是否需要,设置为
- 一、思路1、通过window的aip函数CreateFile()函数获得文件句柄2、检测在获得句柄的时候是否报错“文件被占用无法打开”3、如
- 很多时候,我们需要对List进行排序,Python提供了两个方法,对给定的List L进行排序:方法1.用List的成员函数sort进行排序
- 分析使用CrawlSpider结合LinkExtractor和Rule爬取网页信息LinkExtractor用于定义链接提取规则,一般使用a
- 这篇文章主要介绍了Python中断多重循环的几种方式详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- 本文实例讲述了php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法。分享给大家供大家参考,具体如下:微信支付a
- asp获取application对象代码如下: <%application("new&qu
- 这篇文章主要介绍了python lambda表达式(匿名函数)写法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学
- 我们都知道,Numpy 是 Python 环境下的扩展程序库,支持大量的维度数组和矩阵运算;Pandas 也是 Python 环境下的数据操
- 使用python删除excel表格重复行。# 导入pandas包并重命名为pdimport pandas as pd# 读取Excel中Sh
- 1.reshapereshape是重塑,常用的三种写法如下:numpy.arange(n).reshape(a, b) &nb
- 在之前介绍PyQtGraph的文章中,我们都是一次性的获取数据并将其绘制为图形。然而在很多场景中,我们都需要对实时的数据进行图形化展示,比如
- 本文实例讲述了Python 类的魔法属性用法。分享给大家供大家参考,具体如下:魔法属性无论人或事物往往都有不按套路出牌的情况,Python的
- 本文实例讲述了Django框架中间件(Middleware)用法。分享给大家供大家参考,具体如下:1、面向切面编程切点(钩子)切点允许我们动
- 想实现发送邮件需要经过以下几步:1、登录邮件服务器2、构造符合邮件协议规则要求的邮件内容3、发送Python对SMTP支持有smtplib和
- 所谓的列表推导式,就是指的轻量级循环创建列表。基本使用方式# 创建一个0-10的列表a = [x for x in range(11)]pr