<table/>設置列寬度無效的問題

一、場景重現

<html>
<head>
    <title>測試</title>
    <style type="text/css">
        .table {
            table-layout: fixed;
        }
    </style>
</head>
<body>
<div style="width: 100%">

    <table class="table" style="width: 100%">
        <thead>
        <tr>
            <th colspan="7" style="background-color: #2f96b4">地址情況</th>
        </tr>
        <tr>
            <th style="width: 80px;">國家</th>
            <th style="width: 80px;">省份</th>
            <th style="width: 80px;">城市</th>
            <th style="width: 80px;">區</th>
            <th style="width: 80px;">街道</th>
            <th style="width: 500px;">居委會</th>
            <th style="width: 80px;">門牌號</th>
        </tr>
        </thead>
       
        <tbody>
            <tr style="text-align:center">
                <td>中國</td>
                <td>廣東</td>
                <td>廣州</td>
                <td>天河</td>
                <td>五山</td>
                <td><pre style="word-break: break-all">天河中學高中部隔壁的小區</pre></td>
                <td><pre >aa</pre></td>
            </tr>
     
        </tbody>
    </table>
</div>
</body>
</html>

運行結果:

期待結果:

 

二、分析原因

如果對<table/>設置table-layer:fixed樣式後,列寬會平均化,對列<th/>的寬度設置會失效。

解決方法: 
在tbody前面加

<colgroup>
   <col style="width: 100px;"/>
   <col style="width: 100px;"/>
   <col style="width: 100px;"/>
   <col style="width: 150px;"/>
   <col style="width: 100px;"/>
   <col style="width: 500px;"/>
   <col style=""/>
</colgroup>


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章