雅黑字體對(duì)IE中的網(wǎng)頁布局的影響
互聯(lián)網(wǎng) 發(fā)布時(shí)間:2008-10-17 19:24:42 作者:佚名
我要評(píng)論

5月20日,微軟正式提供了Windows XP下可用的雅黑字體下載,雅黑字體是一款近乎完美的字體,解決了宋體小文字無法辯認(rèn)的問題,特別是對(duì)于液晶顯示器(LCD),在開啟ClearType效果之后,你就會(huì)得到一個(gè)更加完美的視覺享受。我現(xiàn)在已經(jīng)對(duì)雅黑著迷了,回頭看默認(rèn)為宋體的系統(tǒng),鋸
5月20日,微軟正式提供了Windows XP下可用的雅黑字體下載,雅黑字體是一款近乎完美的字體,解決了宋體小文字無法辯認(rèn)的問題,特別是對(duì)于液晶顯示器(LCD),在開啟ClearType效果之后,你就會(huì)得到一個(gè)更加完美的視覺享受。我現(xiàn)在已經(jīng)對(duì)雅黑著迷了,回頭看默認(rèn)為宋體的系統(tǒng),鋸齒太明顯了,很丑。
但是這樣隨之而來的問題是,雅黑會(huì)對(duì)Internet Explorer中的布局頁面影響。目前我發(fā)現(xiàn)的問題主要存在于兩個(gè)方面:
一、下劃線有時(shí)變成了刪除線(視覺錯(cuò)位,并不是真正的刪除線),在有英文和中文混排的段落中,下劃線會(huì)被折斷,變得相當(dāng)不規(guī)則。
下面是google.cn首頁的中文文字超級(jí)鏈接:

這個(gè)現(xiàn)象只會(huì)出現(xiàn)在中文字體中,英文字體不受影響:

如果有中英文混排的情況,就更加明顯了:

可以看出,有中文的地方下劃線都上移的,英文沒有受到影響。
二、Internet Explorer中行高的變化
下面是我的博客中對(duì)一個(gè)有背景圖片的超級(jí)鏈接的截圖:

原來在宋體下正常的樣式,現(xiàn)在在下面露出來了一塊,這說明在Internet Explorer中行高增加了。但是在Firefox中并沒有發(fā)生變化。
三、嘗試解決
在Google.cn的截圖中我們發(fā)現(xiàn),右邊的“登錄”超級(jí)鏈接是正常的,這說明不是所有的中文超級(jí)鏈接都存在這樣的問題,我仔細(xì)對(duì)照了一下他們樣式上的差異,發(fā)現(xiàn)左面的鏈接比右面的“登錄”多了一個(gè)樣式:
vertical-align:top;
我把這個(gè)屬性屏蔽掉之后一切正常。兩樣在第三張來自“魅族論壇”的這張截圖中,我發(fā)現(xiàn)在雖然它沒有在文字樣子中出現(xiàn)vertical-align,但是在后面的兩個(gè)小圖片中有:
vertical-align:middle;
去掉這兩個(gè)圖片后,一切又正常了。
因此可以肯定,在中文的超級(jí)鏈接中使用vertical-align會(huì)出現(xiàn)問題(并不是每個(gè)元素都有vertical-align屬性),最簡單的解決方法就是,避免使用vertical-align或者valign,或者避免使用超級(jí)鏈接的下劃線。當(dāng)然這不是正確處理問題的好方法
至于在我博客中再現(xiàn)的這個(gè)問題,恰恰說明雅黑字體導(dǎo)致Internet Explorer(Firefox顯示正常)中行高的增加,要解決這個(gè)問題,只需要控制得的高度就可以了,但是<a>是一個(gè)行內(nèi)元素,沒能設(shè)置高度,所以要配合disaply:block,然后再固定高度(不過,設(shè)置了block屬性之后可能會(huì)產(chǎn)生自動(dòng)換行,這時(shí)候你就要結(jié)合使用float等屬性了)。我發(fā)現(xiàn)這個(gè)方法也能解決上面的問題,所以為超級(jí)鏈接固定高度會(huì)是比較好的方法。
額外說明:我是在Windows XP的基礎(chǔ)上修改了默認(rèn)字體,可能會(huì)因此而產(chǎn)生一些問題,上面我列舉的兩類問題我很難斷定是由于雅黑字體本身引起的,還是其它不正確設(shè)置引起的。暫時(shí)沒有找到Vista系統(tǒng)測試是否同樣存在這樣的問題,如果哪位有條件可以幫忙測試一下。
另外:這個(gè)問題存在于Internet Explorer的各個(gè)版本中,F(xiàn)irefox不受影響。
原文連接:http://www.dudo.org/article.asp?id=245
但是這樣隨之而來的問題是,雅黑會(huì)對(duì)Internet Explorer中的布局頁面影響。目前我發(fā)現(xiàn)的問題主要存在于兩個(gè)方面:
一、下劃線有時(shí)變成了刪除線(視覺錯(cuò)位,并不是真正的刪除線),在有英文和中文混排的段落中,下劃線會(huì)被折斷,變得相當(dāng)不規(guī)則。
下面是google.cn首頁的中文文字超級(jí)鏈接:

這個(gè)現(xiàn)象只會(huì)出現(xiàn)在中文字體中,英文字體不受影響:

如果有中英文混排的情況,就更加明顯了:

可以看出,有中文的地方下劃線都上移的,英文沒有受到影響。
二、Internet Explorer中行高的變化
下面是我的博客中對(duì)一個(gè)有背景圖片的超級(jí)鏈接的截圖:

原來在宋體下正常的樣式,現(xiàn)在在下面露出來了一塊,這說明在Internet Explorer中行高增加了。但是在Firefox中并沒有發(fā)生變化。
三、嘗試解決
在Google.cn的截圖中我們發(fā)現(xiàn),右邊的“登錄”超級(jí)鏈接是正常的,這說明不是所有的中文超級(jí)鏈接都存在這樣的問題,我仔細(xì)對(duì)照了一下他們樣式上的差異,發(fā)現(xiàn)左面的鏈接比右面的“登錄”多了一個(gè)樣式:
vertical-align:top;
我把這個(gè)屬性屏蔽掉之后一切正常。兩樣在第三張來自“魅族論壇”的這張截圖中,我發(fā)現(xiàn)在雖然它沒有在文字樣子中出現(xiàn)vertical-align,但是在后面的兩個(gè)小圖片中有:
vertical-align:middle;
去掉這兩個(gè)圖片后,一切又正常了。
因此可以肯定,在中文的超級(jí)鏈接中使用vertical-align會(huì)出現(xiàn)問題(并不是每個(gè)元素都有vertical-align屬性),最簡單的解決方法就是,避免使用vertical-align或者valign,或者避免使用超級(jí)鏈接的下劃線。當(dāng)然這不是正確處理問題的好方法
至于在我博客中再現(xiàn)的這個(gè)問題,恰恰說明雅黑字體導(dǎo)致Internet Explorer(Firefox顯示正常)中行高的增加,要解決這個(gè)問題,只需要控制得的高度就可以了,但是<a>是一個(gè)行內(nèi)元素,沒能設(shè)置高度,所以要配合disaply:block,然后再固定高度(不過,設(shè)置了block屬性之后可能會(huì)產(chǎn)生自動(dòng)換行,這時(shí)候你就要結(jié)合使用float等屬性了)。我發(fā)現(xiàn)這個(gè)方法也能解決上面的問題,所以為超級(jí)鏈接固定高度會(huì)是比較好的方法。
額外說明:我是在Windows XP的基礎(chǔ)上修改了默認(rèn)字體,可能會(huì)因此而產(chǎn)生一些問題,上面我列舉的兩類問題我很難斷定是由于雅黑字體本身引起的,還是其它不正確設(shè)置引起的。暫時(shí)沒有找到Vista系統(tǒng)測試是否同樣存在這樣的問題,如果哪位有條件可以幫忙測試一下。
另外:這個(gè)問題存在于Internet Explorer的各個(gè)版本中,F(xiàn)irefox不受影響。
原文連接:http://www.dudo.org/article.asp?id=245
相關(guān)文章
- 本文主要介紹了css九宮格布局的五種方法,內(nèi)容包括grid布局、flex布局、table布局、float浮動(dòng)定位、inline-block+letter-spacing屬性這五種方法的實(shí)現(xiàn),感興趣的可以了解下2023-09-18
- 在Web開發(fā)中,經(jīng)常會(huì)遇到需要將元素水平和垂直居中的情況,今天,將為大家分享幾種CSS方法,讓你的元素輕松居中,讓頁面更美觀吸引人,感興趣的小伙伴可以自己動(dòng)手試一試2023-09-08
- 相信大家在面試的時(shí)候也會(huì)經(jīng)常碰到css實(shí)現(xiàn)元素居中的方法,下面我介紹6種方法給大家,歡迎大家評(píng)論區(qū)交流2023-09-07
flex布局中使用flex-wrap實(shí)現(xiàn)換行的項(xiàng)目實(shí)踐
最近需要做個(gè)換行的布局,本文主要介紹了flex布局中使用flex-wrap實(shí)現(xiàn)換行的項(xiàng)目實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需2022-06-16CSS布局之浮動(dòng)(float)和定位(position)屬性的區(qū)別
今天看到有朋友留言問浮動(dòng)和定位有什么區(qū)別,如何使用?今天找了篇文章,講的比較通俗易懂,供大家參考2021-09-23- 這篇文章主要介紹了css實(shí)現(xiàn)元素居中的N種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
div水平布局兩邊對(duì)齊的三種實(shí)現(xiàn)方法
這篇文章主要介紹了div水平布局兩邊對(duì)齊的三種實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起2021-01-21waterfall瀑布流布局+動(dòng)態(tài)渲染的實(shí)現(xiàn)
這篇文章主要介紹了waterfall瀑布流布局+動(dòng)態(tài)渲染的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起2021-01-19頁面中有間隔的方格布局如何完美實(shí)現(xiàn)方法
這篇文章主要介紹了頁面中有間隔的方格布局如何完美實(shí)現(xiàn)方法。文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來2020-11-27css實(shí)現(xiàn)六種自適應(yīng)兩欄布局方式
這篇文章主要介紹了css實(shí)現(xiàn)六種自適應(yīng)兩欄布局方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)2020-10-28