2017-03-19 59 views

回答

1

圖像需要在td中,如果您希望td跨越tr的整個寬度,請使用colspan屬性。然後,如果你想img填補td的寬度,使用display: block; width: 100%;

table { 
 
    border-collapse: collapse; 
 
} 
 

 
tbody tr:hover { 
 
    background: #eee; 
 
} 
 

 
td:first-child { 
 
    text-align: left; 
 
} 
 

 
th { 
 
    background: #888; 
 
    color: white; 
 
} 
 

 
td, 
 
th { 
 
    padding: 0.75em; 
 
    text-align: center; 
 
} 
 

 
img { 
 
    width: 100%; 
 
    display: block; 
 
}
<table> 
 

 
    <tr> 
 
    <th>Model</th> 
 
    <th>Max speed</th> 
 
    <th>Power</th> 
 
    <th>Swept volume</th> 
 
    <th>Weight</th> 
 
    </tr> 
 

 
    <tr> 
 
    <td>Car 1</td> 
 
    <td>45 mph (72 km/h)</td> 
 
    <td>22 hp</td> 
 
    <td>2865 ccm</td> 
 
    <td>800 kg</td> 
 
    </tr> 
 

 
    <tr> 
 
    <td colspan="5"><img src="http://placehold.it/350x150" alt="car_preview"></td> 
 
    </tr> 
 

 
    <tr> 
 
    <td>Car 2</td> 
 
    <td>45 mph (72 km/h)</td> 
 
    <td>22 hp</td> 
 
    <td>2865 ccm</td> 
 
    <td>800 kg</td> 
 
    </tr> 
 

 
    </table

+0

確定,但如果我想的是在 「汽車1」 相同? – Champop

+0

@Champop那麼你可能會考慮不使用表格或問自己爲什麼它必須在同一個'tr'中,並且如果沒有這個要求就可以做到。你不能把'img'作爲'tr'的直接子節點 - 它必須在'td'中。並且表中的「td」將顯示在其他「td」的旁邊。你正在擴展一個「表」的限制。你應該可以在任何你想做的事情上做任何事情,而不必在'tr'中加入'img' –

0

唯一有效的標籤<tr>內是<td>。 在<img>行中,您需要在<td>上設置一個colspan,該總數等於列的總數。

像這樣:

<table> 
    <tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
</tr> 
<tr> 
    <td colspan="6"></td> 
</tr> 
<tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
</tr>