CSS中設定表格TD寬度的問題
CSS佈局,表格寬度不聽使喚的例項。想把表格第一例寬度設為20,其他自適應。但CSS中寬度是等寬的。只設這一行也不起作用。但是在實際應用中總是等寬處理,並不按照樣式來走。
XML/HTML程式碼- <tablewidth="100%">
- <tr>
- <tdcolspan="6"align="center"><strong>少 兒 瑜 伽 課 程 </strong></td>
- </tr>
- <
- <tdwidth="20"> 1</td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <tdwidth="20"
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- </table>
修改過程一:如圖把行整個設一次,不起作用。
XML/HTML程式碼- <tr>
- <
- <tdwidth="138"></td>
- <tdwidth="138"></td>
- <tdwidth="138"></td>
- <tdwidth="138"></td>
- <tdwidth="138"></td>
- </tr>
修改二:把這行寫法全部換成PX,不起作作。
XML/HTML程式碼- <tr>
- <tdstyle="width:20px; "> 1</td>
- <tdstyle="width:138px; "></td>
- <tdstyle="width:138px; "></td>
- <tdstyle="width:138px; "></td>
- <tdstyle="width:138px; "></td>
- <tdstyle="width:138px; "></td>
- </tr>
修改三:這行改成CSS控制,也不起作用。
XML/HTML程式碼- <tr>
- <tdclass="widtd_20"></td>
- <tdclass="width_138"></td>
- <tdclass="width_138"></td>
- <tdclass="width_138"></td>
- <tdclass="width_138"></td>
- <tdclass="width_138"></td>
- </tr>
- td.widtd_20 {
- width:20px;
- }
- td.width_138 {
- width:138px;
- }
修改四:按修改三,把表格的每一行都用了CSS。還是不起作用。
修改五:在修改四的基礎上,把每行的最後一個CSS控制去掉。還是不起作用。因為看了藍色理想的文章,表格定義了100%,最後一個TD要讓它自適應寬度。見下文,但這樣改法還是不行。
XML/HTML程式碼- <tr>
- <tdclass="widtd_20"></td>
- <tdclass="width_138"></td>
- <tdclass="width_138"></td>
- <tdclass="width_138"></td>
- <tdclass="width_138"></td>
- <td></td>
- </tr>
修改六:將上面的表格分成兩個,其中定義寬度的行位於最上面,即解決問題。
XML/HTML程式碼- <tablewidth="100%">
- <tr>
- <tdcolspan="6"align="center"><strong>少 兒 瑜 伽 課 程 </strong></td>
- </tr>
- </table>
- <tablewidth="100%">
- <tr>
- <tdwidth="20"> 1</td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <tdwidth="20"> 2</td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- <td></td>
- </tr>
- </table>
思路最後解決是因為看到藍色理想的一個貼子關於Table中TD寬度設定的問題:(網頁來源:http://bbs.blueidea.com/thread-2909153-1-2.html)
我給table定義了一個類,其中有width:100% 然後我給table中的一個td定義寬度width:30px
結果是td的寬度不受控制,但是如果將td寬度改為width:10%這樣效果就出來了,但是對於不同螢幕寬度,顯示還是會有問題,不知道是不是百分比和絕對寬度不能相容。有人說用table-layout:fixed,試過了,不行。請大家出點策略
table-layout:fixed 之後,在第一行就要把各td的寬度(絕對寬度和百分比都可以)定好。如果table寬度定為100%了,那麼要留一個td不設定寬度,讓它自由伸縮。
來自百度介紹:怎樣用CSS設定table第一列樣式
網頁來源:http://zhidao.baidu.com/question/83848919.html?fr=qrl&fr2=query
你編寫表格的時候可以這樣:
把第一列變成th ,這樣就可以方便的控制了。
例如:三行三列的表格可以這樣寫:
- <table>
- <tbody>
- <tr>
- <th></th><td></td><td></td>
- </tr>
- <tr>
- <th></th><td></td><td></td>
- </tr>
- <tr>
- <th></th><td></td><td></td>
- </tr>
- </tbody>
- </table>
- th{
- width:100px;
- }
- td{
- width:200px;
- }
css設定一列td寬度
解決辦法:
1.插入表格。30行兩列,寬380px
2.滑鼠點在第一個單元格中(一行一列),在屬性面板中輸入寬度100
3.完成
解決辦法二:
CSS程式碼- td.p10 {width:10%;}
- td.p15 {width:15%;}
- td.p20 {width:20%;}
- td.p45 {width:45%;}
- <tdclass="p10">...</td>
- <tdclass="p10">...</td>
- <tdclass="p20">...</td>
- <tdclass="p15">...</td>
- <tdclass="p45">...</td>
上述的百分比,也可以換成px 。此處來源:http://zhidao.baidu.com/question/62832227.html
上面兩個例子中發現如果設定CSS,寬度還是不起作用,一定要看第一行是否設定了寬度。如果是自適應的話,且表格設定100%的話,最好拆成兩個表格處理。至於為什麼?長江VS長征也不清楚。