1. 程式人生 > >解決CSS下img圖片多餘空白或者是表格中有空隙Bug的方案

解決CSS下img圖片多餘空白或者是表格中有空隙Bug的方案

在進行頁面的DIV+CSS排版時,遇到IE6(當然有時Firefox下也會偶遇)瀏覽器中的圖片元素img下出現多餘空白的問題絕對是常見的對於該問題的解決方法也是“見機行事”。

  1、將圖片轉換為塊級物件

  設定img為“display:block;”。在本例中新增一組CSS程式碼:“#sub img {display:block;}”。(PS,我遇到的問題就是用這個方法解決的。我把a img {display:block;}這樣定義好後,A屬性的高度就不會比預料的高了。注意不要定義 img {display:block;},如果這樣的話,有一些圖片顯示的效果可能會不一樣的,比如圖文與文字混排的時候,圖片不會居中,而是在頂部位置。)

  2、設定圖片的垂直對齊方式

  設定圖片的vertical-align屬性為“top,text-top,bottom,text-bottom”也可以解決。如本例中增加一組CSS程式碼:“#sub img {vertical-align:top;}”。

  3、設定父物件的文字大小為0px

  在#sub中新增一行:“font-size:0;”可以解決問題。但這也引發了新的問題,在父物件中的文字都無法顯示。就算文字部分被子物件括起來,設定子物件文字大小依然可以顯示,但在CSS效驗的時候會提示文字過小的錯誤。

  4、改變父物件的屬性

  如果父物件的寬、高固定,圖片大小隨父物件而定,那麼可以設定“overflow:hidden;”來解決。如本例中可以向#sub中新增以下程式碼:“width:88px;height:31px;overflow:hidden;”。

  5、設定圖片的浮動屬性

  即在本例中增加一行CSS程式碼:“#sub img {float:left;}”。如果要實現圖文混排,這種方法是很好的選擇。

  6、取消圖片標籤和其父物件的最後一個結束標籤之間的空格

  這個方法要強調下,在實際開發中該方法可能會出亂子,因為在寫程式碼的時候為了讓程式碼更體現語義和層次清晰,難免要通過IDE提供程式碼縮排顯示,這必然會讓標籤和其他標籤換行顯示,比如說DW的“套用源格式”命令。所以說這個方法可以供我們瞭解出現BUG的一種情況,具體解決方案的還得各位見招拆招了。