按鈕在IE中兩邊被拉伸的 BUG
發(fā)布時間:2008-12-25 12:15:11 作者:佚名
我要評論
大家在寫按鈕(input、button)的時候會發(fā)現(xiàn)在 IE 下:
隨著字數(shù)的增多,兩邊的間距也會越來越大。
在 WIN 的XP 風格下,當字數(shù)很多時,兩邊還會出現(xiàn)嚴重的鋸齒。
到底是什么原因呢?
藍色理想 原 WEB標準化專欄 的斑竹 zbm2001z 給出了一個答案:
1、IE 在按鈕的 value
大家在寫按鈕(input、button)的時候會發(fā)現(xiàn)在 IE 下:
隨著字數(shù)的增多,兩邊的間距也會越來越大。
在 WIN 的XP 風格下,當字數(shù)很多時,兩邊還會出現(xiàn)嚴重的鋸齒。
到底是什么原因呢?
藍色理想 原 WEB標準化專欄 的斑竹 zbm2001z 給出了一個答案:
1、IE 在按鈕的 value 值每增加 4 個字節(jié)(漢字為 2 個)時,就會在按鈕的兩邊產(chǎn)生總共一個字節(jié)的內(nèi)邊距寬度。
2、IE 的按鈕(XP 風格)默認樣式是一個固定尺寸的圓角矩形圖片作背景,所以一旦按鈕變寬變高后,這個固定尺寸的圓角矩形圖片的邊緣自然就會出現(xiàn)“拉毛”的現(xiàn)象了。
對于第二個問題我們暫時沒辦法去解決,除非 WIN 系統(tǒng)自己修復 BUG ,但對于第一個問題 ,我們還是可以修復的。
IE 下給按鈕元素設置 overflow 屬性的 visible 值(注 :padding 值僅在設置了overflow:visible 屬性后才有效),這個屬性其實在上次寫的《background-clip 與 background-origin 的一則運用》一文中已經(jīng)使用。不過在今天閱讀了《The stretched buttons problem in IE》后,發(fā)現(xiàn)原來還有一個小 BUG —— 如果將按鈕置于表格單元格中,雖然按鈕顯示正確了,但是原先預留的寬度大小卻沒有改變,仍然占據(jù)著空間,需要在 IE6 中設置按鈕的寬度(width)為 0(IE7同樣也存在此 BUG,但暫時沒有尋找到好的方式解決)。
最終的修復代碼如下(Demo):
input.button { padding: 0 .25em; width: auto; _width: 0; overflow:visible !ie;}
隨著字數(shù)的增多,兩邊的間距也會越來越大。
在 WIN 的XP 風格下,當字數(shù)很多時,兩邊還會出現(xiàn)嚴重的鋸齒。
到底是什么原因呢?
藍色理想 原 WEB標準化專欄 的斑竹 zbm2001z 給出了一個答案:
1、IE 在按鈕的 value 值每增加 4 個字節(jié)(漢字為 2 個)時,就會在按鈕的兩邊產(chǎn)生總共一個字節(jié)的內(nèi)邊距寬度。
2、IE 的按鈕(XP 風格)默認樣式是一個固定尺寸的圓角矩形圖片作背景,所以一旦按鈕變寬變高后,這個固定尺寸的圓角矩形圖片的邊緣自然就會出現(xiàn)“拉毛”的現(xiàn)象了。
對于第二個問題我們暫時沒辦法去解決,除非 WIN 系統(tǒng)自己修復 BUG ,但對于第一個問題 ,我們還是可以修復的。
IE 下給按鈕元素設置 overflow 屬性的 visible 值(注 :padding 值僅在設置了overflow:visible 屬性后才有效),這個屬性其實在上次寫的《background-clip 與 background-origin 的一則運用》一文中已經(jīng)使用。不過在今天閱讀了《The stretched buttons problem in IE》后,發(fā)現(xiàn)原來還有一個小 BUG —— 如果將按鈕置于表格單元格中,雖然按鈕顯示正確了,但是原先預留的寬度大小卻沒有改變,仍然占據(jù)著空間,需要在 IE6 中設置按鈕的寬度(width)為 0(IE7同樣也存在此 BUG,但暫時沒有尋找到好的方式解決)。
最終的修復代碼如下(Demo):
input.button { padding: 0 .25em; width: auto; _width: 0; overflow:visible !ie;}
相關文章
- 實現(xiàn)背景圖片拉伸的方法有很多,下面為大家詳細介紹下使用濾鏡來簡單實現(xiàn),有需要的朋友可以參考下,希望對大家有所幫助2013-08-18
- 但是css3出現(xiàn)以后,這個重復顯示的情況被改善了。background-size 屬性可以讓我們之前的讓背景圖片拉伸填充的希望成真,具體使用方法如下感興趣的朋友可以參考下哈,希望對2013-07-11
CSS背景圖拉伸效果兼容FF/Chrome/IE等主流瀏覽器(親測)
按鈕作為DIV的背景圖來顯示,實際上有多個這樣的按鈕,而且DIV中的文字,也就是按鈕上要顯示的文字內(nèi)容和個數(shù)都不定,這種情況下就需要用背景圖片拉伸效果來處理,感興趣的2013-04-24- table自動拉伸在做瀏覽器兼容時一直困擾著我,終于解決了,這篇文章我是極力推薦的,table有時候不好控制,一些內(nèi)容自動非配td寬度以及內(nèi)容撐開,邊的問題有時候很讓人頭疼2013-03-25
- 可在background屬性中設置所有的背景屬性,下面為大家詳細介紹下各個屬性的含義,初學者可以參考下,希望對大家學習css有所幫助2013-08-12
div背景定位background設置元素的背景參數(shù)
DIV背景定義參數(shù):background 設置元素的背景參數(shù),div+css的廣泛使用,也改變了這一使用習慣,變成了將N多小圖標集于一個大圖上,再通過div來定位需要用到的圖片部分,大大2013-02-02對背景圖定位中background-position屬性的自我理解
最近在項目中需要大量的用到很多標簽按鈕什么的零碎圖片,加上一直沒機會使用Css中的”精靈技術“,這里把我對background-position的理解寫成文檔供更多人使用學習;如果有2013-01-15- 使用css3 屬性:background-size可以輕松實現(xiàn)像桌面壁紙一樣拉伸,下面為大家詳細介紹下具體的相關實現(xiàn)過程,有此需求的朋友可以參考下,希望對大家有所幫助2013-08-19

