答案 0 :(得分:1)
有许多实现任务的选项。其中之一是绝对定位中的伪元素。我们在父单元格的整个区域上拉伸每个伪元素,并使用background
属性绘制对角线。一个伪元素从左上角到右下角,第二个-从左下角到右上角。无论单元格的宽度或高度如何,线条都会从一角到另一角。如果需要将单元格内容放在行的顶部,则需要使用z-index
属性将其放在伪元素上方。
HTML:
<table>
<tr>
<td class="cross">
<span>Text</span>
</td>
<td>
<span>Text</span>
</td>
<td class="cross">
<span>Text</span>
</td>
</tr>
</table>
CSS:
td {
border: 1px solid #222;
}
.cross span {
position: relative;
z-index: 2;
}
.cross {
position: relative;
width: 200px;
height: 100px;
text-align: center;
}
.cross:before,
.cross:after {
content: '';
position: absolute;
left: 0;
top: 0;
right: 0;
bottom: 0;
z-index: 1;
}
.cross:before {
background: linear-gradient(to top right, transparent calc(50% - 1px), red 50%, transparent calc(50% + 1px) );
}
.cross:after {
background: linear-gradient(to left top, transparent calc(50% - 1px), red 50%, transparent calc(50% + 1px) );
}
还有一个示例: