table {
border-top: 1px solid #000;
border-collapse: collapse;
width: 100%;
}
tr, th, td {
border-bottom: 1px solid #000;
}
th {
padding: 30px;
position: relative;
text-align: left;
width: 30%;
}
th:after {
background: #000;
bottom: 30px;
content: '';
display: block;
position: absolute;
right: 0;
top: 30px;
width: 1px;
}
td {
padding: 30px;
position: relative;
}
th + td:before {
background: #000;
bottom: 30px;
content: '';
display: block;
position: absolute;
left: -1px;
top: 30px;
width: 1px;
}
<table>
<tr>
<th>Line</th>
<td>Line</td>
</tr>
<tr>
<th>Line<br>Line<br>Line</th>
<td>Line</td>
</tr>
<tr>
<th>Line</th>
<td>Line<br>Line<br>Line</td>
</tr>
<!-- new problem arise -->
<tr>
<th rowspan="2">Line</th>
<td>Line</td>
</tr>
<tr>
<td>Line</td>
</tr>
</table>
私は上部と下部の両方でいくつかさえもギャップで、th
タグの右の境界線を持つようにしたい動作しません。私がタイトルで言ったように、th
タグにはafter
疑似要素を使用し、IE 11では動作しません。バグの詳細は添付のコードをご覧ください。
誰も私にこの問題の解決策を提案できますか?
ありがとうございます!
更新
Iは@Mrリスターのソリューションを実装し、それは、単一の行th
+ td
タグとよく働きました。
th
をrowspan
と使用したときに、IE 11の動作がもう一度壊れてしまうという別のバグが発生しました。この問題を完全に解決するために私を助けてください。
ありがとうございます!
おかげで、あなたの提案のためにたくさん!それはうまくいった。 しかし、 'rowspan'を使うもう一つのバグがあります。上記のアップデート版をご覧ください。このバグを解決するのを手伝ってください。 –
@TylerBean Pfffは、私が言ったように、私は本当の解決策を持っていません。これは回避策に過ぎませんでした。私はそれについて考える必要があります。 –
「より良い」回避策が見つかりました.D。伝説的な 'position:absolute'を' th'の中に余分なタグを付けて使用し、jqueryの助けを借りて、今は完全に機能しました。 –