2010-05-26 124 views
1

我爲日曆使用HTML表格,我想用我的數據庫中的各種事件填充單元格。通常他們會在週末降落,但有些會跑長週末,銀行假期或甚至是單週的一天。表格中的可變寬度列

如何讓我的表格列相應地展開和收縮。如果可能,我想避免使用JavaScript。

如果這不能完成,我將需要一個教程來幫助我瞭解如何使div的定位行爲。

歡呼

編輯一些澄清: 圖片它像5列, 山坳1-3,5 = 30PX 山坳4 = 250像素

但我不能總是知道PHP繪製表之前他們應該是多寬。因爲事件可以是任何一天(列)。

最終編輯: 看起來我試圖用我的CSS太辛苦。 http://www.freeimagehosting.net/uploads/c900b5c77b.png

我得到了一個結果我很高興通過遵循下面的建議,並刪除我的寬度聲明,並將單元格更改爲最大寬度。可能將有可能使所有的樂趣兼容後來:(

這是我去的CSS。td.calendar天-NP是從本月的開始/結束排除天。

/* calendar */ 
table.calendar{width:100%;border-left:1px solid #999;} 
tr.calendar-row{} 
td.calendar-day{min-height:80px;position:relative;}* html div.calendar-day{height:80px;} 
td.calendar-day:hover{background:#F9F9FA;} 
td.calendar-day-np{background:#F9F9FA;min-height:80px;}* html div.calendar-day-np{height:80px;} 
td.calendar-day-head{text-align:center;padding:5px;font-weight:bold;background:#ccc;border-bottom:1px solid #999;border-top:1px solid #999;border-right:1px solid #999;} 
div.day-number{background:#ccc;padding:5px;color:#fff;font-weight:bold;float:right;margin:-5px -5px 0 0;width:20px;text-align:center;} 
/* shared */ 
td.calendar-day,td.calendar-day-np{max-width:200px;padding:5px;border-bottom:1px solid #999;border-right:1px solid #999;} 
+1

歡迎來到SO。你可以添加更多的細節?你能舉一個例子,你需要縮小/擴大如何? – 2010-05-26 09:22:49

回答

1

那麼,如果您在css文件或內聯css或div標籤中指定了最小寬度和最小高度(壞習慣),那麼您的列和行將具有最小值寬度和高度,但可以根據需要進行擴展。

如果以這種方式嘗試,結果如何? 是否有可能爲整個表格指定寬度?如果是,那麼空間必須以某種方式填充。也許這可能會使其他的柱子變寬,然後需要。 (如果我錯了,有人糾正我)。也許你可以嘗試讓一個單元格的內容真的很長,看看會發生什麼。

+0

這就是我認爲我可以做的,但表格單元格將繼續並將其寬度調整爲均勻的空格。 – Jack 2010-05-26 09:37:28

+1

嗯,也許你可以發佈一些代碼(最有趣的將是CSS部分)和/或截圖?這似乎有點奇怪,這是行不通的。 – TheMorph 2010-05-26 10:13:49

+0

看看這個http://www.freeimagehosting.net/uploads/b72701b049.png – Jack 2010-05-26 11:04:07

1

您是否在尋找colspan

+0

不是真的,我的表格標題是一週中的某幾天,如果週一沒有任何東西,我不希望它們變得很寬,但如果週六有事件發生,它應該非常寬。普通表只是將它們的空間全部等寬。 與colspan我不能有事件A去星期五 - 與坐在事件B上坐。 – Jack 2010-05-26 09:35:56

+0

如果eventA本身位於一個單元格中,eventB位於單元格中,那麼您可以使用不同的colspans。 – ANeves 2010-05-26 09:45:10

+1

小心分享您的HTML?可以幫助更多.. – Jeriko 2010-05-26 09:55:11