当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 网页的中英文字体对齐问题的解决

CSS样式表
DIV+CSS网页制作这种叫法不准确
CSS初学者入门:使用table布局网页不明智
xHTML+CSS网页制作和搜索引擎优化SEO的关系
CSS控制页面样式的4种方式和优先级问题
CSS入门教程:CSS选择器
CSS基础入门教程:CSS选择器规范化命名
CSS基础入门教程:理解盒子模型
CSS教程:2个重要概念块状元素和内联元素
CSS实例:盒模型、块状元素与内联元素、CSS选择器
css实例教程:理解Float的含义
CSS实例教程:清除浮动Clear
CSS网页制作教程:制作网页导航条
CSS实例教程:浮动(float)页面布局
CSS实例教程:定位(position)布局页面
CSS实例教程:用position来布局页面
CSS实例教程:CSS Hack
CSS制作网页技巧:单图片按钮实例
CSS网页制作入门实例:首行缩进两个文字
2天掌握DIV+CSS网页制作技术
CSS网页定位教程:详细学习定位知识

CSS样式表 中的 网页的中英文字体对齐问题的解决


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-09   浏览: 127 ::
收藏到网摘: n/a

如果不是因为总监审查严格,一定要求这个细节解决掉,也许我也不会去深究根源性的解决办法,再此感谢MTIME负责而严格的同事。

首先描述一下问题:

如果所示,在IE下当一行文字同时有英文跟中文的时候,链接下划线就会发生折行,也就表示这个时候中英文是没有对齐的!(FIREFOX不受此问题影响)

但是经过测试,默认的直接在页面里设置链接的时候是不会出现这个情况的!

代码拷贝框

[Ctrl+A 全部选择 然后拷贝]

那么疑惑又来了,是什么导致了中英文偏差呢?!解决办法又是什么呢?!于是经过我测试发现两种情况(当然有可能有更多导致的情况。你们可以自己去尝试),当中英文对象的相邻元素拥有vertical-align属性设置(比如前面一张小图片,或者文本框,我们需要把他们垂直对齐,一般都会给图片,文本框(其他任意内联块元素)设置vertical-align:middle;来实现)的时候,那么就会影响到中英文的不对齐。

还有一种情况就是父元素(表格除外)拥有vertical-align属性设置的时候,里面的子元素中英文也会对不齐。

代码拷贝框

[Ctrl+A 全部选择 然后拷贝]

怎么解决这个问题呢?!

先说第一种,就是临近元素的vertical-middle导致的无法对齐的偏差问题解决方案:

给中英文对象加一个zoom:1触发它的haslayout,通过研究发现一旦它有了haslayout之后,中英文就不会对不齐。

代码拷贝框

[Ctrl+A 全部选择 然后拷贝]

第二种情况就是父元素的vertical-middle导致的无法对齐的偏差问题解决方案:

给中英文对象加句vertical-align:baseline就可以解决!

代码拷贝框

[Ctrl+A 全部选择 然后拷贝]

但是我们可以看到,下划线好像贴的过紧,这个时候我们依然还需要给它加句zoom:1;触发它的hasLayout来避免过紧贴合!。

代码拷贝框

[Ctrl+A 全部选择 然后拷贝]

如果您碰到其他情况的中英文对不齐的情况,那么也可以尝试使用上述两种方法来解决。当然最保险最有效的莫过于就是直接中英文都统一使用宋体。