IE下中英文字体不能对齐原因及解决

作者:yhz7155 来源:蓝色理想 时间:2008-08-11 12:47:00 

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

首先描述一下问题:

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

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


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

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


怎么解决这个问题呢?!

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

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


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

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


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


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

标签:字体,英文,IE,浏览器
0
投稿

猜你喜欢

  • 小程序自定义弹出框效果

    2023-07-02 03:47:33
  • python爬虫基本知识

    2022-10-10 09:09:34
  • Python Flask框架模板操作实例分析

    2022-09-21 02:56:23
  • 如何修改Linux的下MySQL 5.0的默认连接数

    2012-01-29 18:07:04
  • Python标准库inspect的具体使用方法

    2023-05-30 08:00:37
  • python爬虫框架feapder的使用简介

    2021-07-20 14:38:27
  • JavaScript 中为 Date 类实现 DateAdd 方法

    2008-04-03 16:19:00
  • Linux下将Python的Django项目部署到Apache服务器

    2022-07-01 23:36:37
  • windows mysql 自动备份的几种方法汇总

    2024-01-25 05:44:43
  • vue.js实现只弹一次弹框

    2024-05-09 15:08:07
  • Python爬虫框架Scrapy常用命令总结

    2022-02-21 20:45:23
  • 与 Function 和 Object 相关的有趣代码

    2010-05-07 12:29:00
  • Django中的CBV和FBV示例介绍

    2022-05-23 10:13:59
  • Python 多线程知识点总结及实例用法

    2022-04-27 13:19:49
  • Python中字典的基本知识初步介绍

    2021-08-25 11:41:40
  • Vue+Java+Base64实现条码解析的示例

    2024-05-02 17:08:27
  • base href 使用方法详解

    2008-05-18 13:27:00
  • 十行代码使用Python写一个USB病毒

    2021-08-27 17:05:41
  • Python print函数:如何将对象打印输出

    2023-03-26 23:07:16
  • Python中range函数的使用方法

    2022-02-07 12:54:12
  • asp之家 网络编程 m.aspxhome.com