有若干种设定网页上字符大小的方法。你可以使用small或者large关键字;或者你可以调整象素或分辨率之类的大小;或者,你可以使用相对的调整手段,如em或者显示百分比。但是,无论你使用哪种方法,每一种方法都有自己的优点和缺点。关键字是最简单的,并且非常容易使用,但是这种方法缺乏灵活性和准确性。有一些固定的度量办法可以保证精度,但是当有的人使用这些方法进行字体调整的时候,它们也许就会产生访问障碍方面的问题。那些相对的度量办法解决了访问障碍的问题,但是它们也有自己的问题。
相对的度量方法通过将字体大小确定为正常大小的放大几倍或者缩小几倍的大小。百分比大小将字体大小的值设置为当前字母大小(从大写字母的顶部到底部)的百分比。
Ems是基于排字惯例来设定的,它定义1em为参考字体大写字母的高度。和其它的方法一致,
理论上而言,使用相对度量的方法来定义字体大小应该对Web开发人员和网页浏览者而言都具有明显的好处。通过将字体大小定义为一个参照字体的相对修改字体,侧重于大小关系的对比,而不是具体的大小数值。
如果你改变了参照字体的大小,那么所有相对度量设定的字体大小就都会改变。这就意味着Web开发者可以通过在主体标签上进行一个简单的修改就可以改变所有的字体。同样的,它还允许网页浏览者可以调整他们的浏览器字体大小,而不丢失什么信息
不幸的是,理论上认为是理所当然的事情到了实际中却并不是想象中的那样。使用相对度量的一个主要问题就是缺乏持久的参照标准。传统的默认字体大小是16个象素,并且假设屏幕的分辨率是每英尺96个象素。在苹果机上,传统的字体大小是12个象素,屏幕分辨率是每英尺72个象素。
虽然Windows默认的字体大小是官方推荐的标准字体大小,但是还有很多苹果的顽固分子(包括一大堆Web开发人员)都习惯用苹果机的默认字体设置。这种设定方式就改变了苹果机使用者门印象中的“正常”状态的字体大小。无论Web开发者使用哪一种方法来定义字体大小,这种做法都会带来问题,更为严重的是,它在相对大小的字体上带来的问题将更大,因为任何默认字体的设定都会改变到相对字体的形状和大小。
有关相对字体大小的另外一个主要问题就是,不是所有的相对大小字体的计算都是由浏览器的默认字体大小或者是在主体标签中定义的字体大小决定的。相反,相对字体大小的计算是由它的父类字体所决定的。这就使得事情变得复杂化,因为父类元素可以并且经常嵌套了几层。例如,在一个表格的cell中,你也许有一个文本的图片叫做div,如果在每一级别中都有使用相对字体大小的方法,相对度量的方法可以相互混合使用,这就造成了字体的大小和你设定的不一致的问题。
如果你将相对大小应用到嵌套的元素中去了,那么这种混合效果就会使相对字体大小变得混乱而且难以理解。浏览器定义的父类元素也容易造成问题的出现,这样,应该选择那种字体为参考字体就成为一个难题了。通常而言,网景4.x使最差的一个,但是在当前的浏览器中也有足够的矛盾现象出现。
相对字体大小是一种很好的方法,可以给网络开发人员带来很大的灵活性和方便。为了成功地使用相对的字体大小,你需要小心地设计你的页面和