由于某些原因,在Safari和Chrome中将背景图像应用于tr时,它会呈现为规则适用于每个td的效果。
火狐:
火狐:
(来源: whyprime.com)
Safari:
(来源: whyprime.com)
我发现了一篇讨论解决方法的文章:
我使用间隔GIF图像在Internet Explorer中使其工作,但是我无法弄清楚如何在Safari中实现。
(来源: whyprime.com)
Safari:
(来源: whyprime.com)
我发现了一篇讨论解决方法的文章:
我使用间隔GIF图像在Internet Explorer中使其工作,但是我无法弄清楚如何在Safari中实现。
您可以使用 "background-attachment : fixed" 来解决此问题。
<table>
<tr class="bg">
<td></td>
<td></td>
</tr>
</table>
在 CSS 中
tr.bg {
background-image : url(../PathToLeftBackground.png) repeat-y 50px 0px;
background-attachment: fixed;
}
它有效!
默认情况下,TR和TD的display属性为table-cell和table-row。我们需要让它们忘记这一点,像简单的块元素一样显示:
tr {display: block;}
td {display: inline-block; background: transparent;}
这段代码解决了我渲染问题。
您的表格是否总是只有两行?例如:
<table>
<tr>
<td></td>
<td></td>
</tr>
</table>
如果是这样的话,一个简单但不太优雅的解决方案是将您的背景图像分成两个图像,并将CSS类应用于左列和右列,在左列的右侧和右列的左侧应用箭头的一半:
<table>
<tr>
<td class="left"></td>
<td class="right"></td>
</tr>
</table>
你的CSS可能类似于:
td.left
{
background: #ffffff url(../PathToLeftBackground.png) top right;
}
td.right
{
background: #fffff url(../PathToRightBackground.png) top left;
}