Css 带表格和溢出div的背景和z索引

Css 带表格和溢出div的背景和z索引,css,Css,我正在想办法让这一切顺利进行。外部表的td的背景:红色不应该覆盖所有其他的吗?为什么这个例子的背景是黄色的,尽管它是DOM中嵌套最深的元素 <style type="text/css"> table, td, div { height: 200px; width: 400px; } </style> <table class="outer" cellpadding="0" cellspacing="0"> <tr>

我正在想办法让这一切顺利进行。外部表的td的背景:红色不应该覆盖所有其他的吗?为什么这个例子的背景是黄色的,尽管它是DOM中嵌套最深的元素

<style type="text/css">
    table, td, div {
    height: 200px;
    width: 400px;
}
</style>

<table class="outer" cellpadding="0" cellspacing="0">
<tr>
    <td style="background: red">
    <div style="overflow:auto;background:green">
    <table class="inner" style="width:800px">
        <tr>
            <td style="background:yellow"></td>
        </tr>
    </table>
    </div>
    </td>
</tr>
</table>
这是一个例子


总而言之。。。我试图用父div中的背景以及外部表的父td覆盖内部表单元格的背景色。这有可能吗?

Td的背景拥有最后发言权。因此,从技术上讲,单靠css是无法做到这一点的。即使你放了一把枪!重要的是,在div样式中,它不会起作用。
无论如何,您可能可以通过js修复这个问题,并用另一个颜色替换td的颜色。

bcz如果您将样式赋予父标记,而不是由子html自动继承,则它的css默认行为

如果你想在子标记中使用其他css,那么你必须为该特定标记提供样式 第二个td始终绘制在第一个td的背景之上,因此位于第一个td的背景之上。当您使用style属性时(该属性始终优先于在样式块或外部CSS文件中应用的任何CSS),如果不使用JavaScript或将样式从style属性移动到样式块,您将无法更改此行为

使用jQuery,您可以通过以下类似的方式实现这一点:

$('.inner td').css({
    'background' : 'colour or image here' 
});

是的,我已经试过了!重要-不起作用。不幸的是,javascript解决方案无法工作,因为我无法摆脱黄色背景。我只需要把一些其他的背景,它实际上是一个图像在上面…你能注入一些html到其中吗?或者你可以随意处理css?好吧,这很酷,因为你可以将黄色TD的大小设置为零,然后向其中注入一个新的div,该div包含你需要的所有内容,在这种情况下,TD不应该应用任何类型的溢出规则,以使级联不适用于DOM树。如果一个div的bgcolor为绿色,而另一个div的bgcolor为红色,则红色不会覆盖绿色。这不是CHTML。选择器起作用,但由于td本身声明了样式,因此只能使用Javascript或编辑HTML本身来覆盖它。