Neo's Blog

首頁 相本 討論 書籤

分類目錄
本站日誌 (51)
碎碎唸啦 (174)
網站架設 (84)
程式設計 (161)
軟體使用 (69)
電子商務 (126)
經營奇想 (48)
基金理財 (11)
聰明消費 (87)
電影心得 (47)
開放原碼 (16)
工作記錄 (2)
毛毛小記 (9)
就是不同 (2)




歷史資料
 




October 08, 2005
[CSS] float:left 排版亂象

前幾個月開始把 Washop 的預設樣板陸續改成 CSS 排版,其中最方便的就是可以依瀏覽器實際的大小來顯示產品。

20051008_03.gif

紅線區塊內的 CSS 語法,只有一個 DIV:

<div style="float:left;width:160px">
產品內容HTML
</div>

只要設定好區塊的寬度,就可以如同相簿縮圖般自動排列。

之前用 Table 排版的做法必須手動設定在畫面上顯示的欄數,這是受限於 Table 標籤的結構以免畫面亂掉。改用 CSS 排版後就可以取消掉自訂欄數的設定,也讓功能更加簡潔好用。

但是有沒有發現上圖有個奇怪的地方?
沒錯,就是列表中間有一段空白,這個空白是從哪裡來的呢? 

看下圖就知道了:

20051008_03.GIF

原來只要 CSS 裡面使用 float:left ,在自動換列的時候會產生有洞就鑽的狀況。就算一個小洞也不例外,因此造成換行有一段空白產生。

這時若是用 DIV 排版的話,改成用 SPAN ,並且拿掉 float:left 就可以了。

修改為 span 的 CSS 語法:

<span style="width:160px">
產品內容 HTML
</span>

20051008_02.gif

 
由 Neo 發表於 October 8, 2005 06:02 AM 收進你的MyShare個人書籤  

等下等下!最後一段我不懂啦~冏rz


MilchFlasche 發表於 October 8, 2005 06:32 PM

HTML Tag : div -> span


archangel 發表於 October 8, 2005 07:17 PM

啊,本來想說這篇應該沒人會看的說。^^
(本來是寫給自己看的)

我馬上把細節寫清楚一點..^^
最近太忙沒時間寫東西啦,呵呵。


Neo 發表於 October 10, 2005 11:04 AM

裡面的sytle,在firefox似乎沒有資源,設定的width沒有顯示耶,怎麼辦呢?


Abula 發表於 October 12, 2005 09:22 PM

這個部分還有另外一個解法,就是同時指定寬度和高度,
如此一來就不用改用span


tokimeki 發表於 October 13, 2005 05:58 AM

請問一下,
在 opera 下,
並沒法讓 float: left;
安份的待在上一層 box 中。
->會一直往橫向排列下去。

不知道大哥有沒解決之道。


loadstone 發表於 October 23, 2005 10:24 PM

span不能下width吧


David 發表於 August 2, 2006 08:47 AM

看完以后实在是佩服楼主的想象力,span 标签居然不做其他处理的情况下还有宽度。
按楼主的意思,如果SPAN标签设置了DISPLAY:BLOCK,那么你如何不用FLOAT?!
楼主真的是缺根痉啊。


小C 發表於 May 30, 2007 02:13 PM

如果把每個 div 都給一個 width 和 height
那不是就不會有洞的出現嗎?


路人甲 發表於 June 10, 2007 12:25 PM

如果把每個 div 都給一個 width 和 height理論上不會有洞

但是ie在內容物大於div寬高時 會很"聰明"的自動把div撐大

這時候就還要搭配上 overflow:hidden的設定值 切掉多餘的部份

應該是這樣子沒有錯吧 有錯還請指教


tka 發表於 July 20, 2007 08:47 AM

請問在Washop那張圖中的"訂閱點子報區塊"的圓角效果是用CSS達到的嗎?是的話請教語法是...?

謝謝


Ricky 發表於 January 7, 2008 09:22 PM

css文件哪里怎么改呢?


阿超 發表於 June 10, 2008 02:54 PM

float:left,到底有什么用,我都没有搞明白哦,学习了。


李涛 發表於 July 8, 2008 03:28 PM

需要增加clear:left;才能得到你想要的效果。



New Document



left


right:aaaaaaaaaaaaaaaaaaaaaa



left


right:aaaaaaaaaaaaaaaaaaaaaa



wang pei 發表於 August 5, 2008 05:38 PM
發表迴響  
(*星號開頭為必填欄位)











(請輸入您看到的數字,看不到請按右鍵->顯示圖片)


記住我的資訊?







Copyright 2005 Neo's Blog All rights reserved.