html – CSS strikethrough效果,Firefox问题

我正在尝试使用这里描述的CSS删除线效果:
https://stackoverflow.com/a/14593540/62072带有TD元素,但它似乎在Firefox中有点不对..

火狐

CSS

.strikethrough
{
    position: relative;
}

    .strikethrough:before
    {
        position: absolute;
        content: "";
        /*width: 170%;*/
        /*left: -35%;*/
        left: 0;
        top: 50%;
        right: 0;
        border-top: 1px solid #333333;
        /*border-color: inherit;*/
        -webkit-transform: rotate(-35deg);
        -moz-transform: rotate(-35deg);
        -ms-transform: rotate(-35deg);
        -o-transform: rotate(-35deg);
        transform: rotate(-35deg);
    }

HTML

<span class="strikethrough">
    Test
</span>
<table>
    <tr>
        <td class="strikethrough">
            5
        </td>
    </tr>
</table>

这是一个JSFiddle来演示:http://jsfiddle.net/Ms4Qy/

知道为什么会这样吗?

最佳答案 已知FF具有一些奇怪的行为,其中元素内的绝对元素具有表格单元格的显示.

以下设置可能会起作用(但它可能会导致表格单元格出现一些其他问题):

.strikethrough
{
    display: inline-block;
}

jsFiddle Demo

点赞