Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么';t`tbody`在表格中设置背景色?_Javascript_Html_Css - Fatal编程技术网

Javascript 为什么';t`tbody`在表格中设置背景色?

Javascript 为什么';t`tbody`在表格中设置背景色?,javascript,html,css,Javascript,Html,Css,我使用作为CSS选择器来设置表中的背景色。我这样做是因为我在表中有多个部分,它们有不同的背景颜色 我的问题是,在单元格上使用边框半径时,单元格不尊重tbody的背景色。也就是说,边界半径以默认背景色(在本例中为白色)而不是tbody颜色(在本例中为绿色)在下面剪切角 更新:这个问题发生在Chrome/Safari中,但在Firefox中没有(我刚刚在所有3个浏览器上测试了自己)。仍在寻找Chrome的解决方案(找到了!请参阅已接受的答案) tr:first child td:first chi

我使用
作为CSS选择器来设置表中的
背景色。我这样做是因为我在表中有多个
部分,它们有不同的背景颜色

我的问题是,在单元格上使用
边框半径时,单元格不尊重
tbody
背景色。也就是说,边界半径以默认背景色(在本例中为白色)而不是tbody颜色(在本例中为绿色)在下面剪切角

更新:这个问题发生在Chrome/Safari中,但在Firefox中没有(我刚刚在所有3个浏览器上测试了自己)。仍在寻找Chrome的解决方案(找到了!请参阅已接受的答案)

tr:first child td:first child{
背景色:红色;
边界半径:25px;
}
桌子{
边界间距:0px;
}
桌体{
背景颜色:绿色;
}

左上角

右上角

机器人左

机器人权利

尝试将
渲染为块元素

tbody {
  background-color: green;
  display: block;
}
tr:first child td:first child{
背景色:红色;
边界半径:25px;
}
桌子{
边界间距:0px;
}
t车身{
背景颜色:绿色;
显示:块;
}

左上角

右上角

机器人左

机器人权利


将cellspacing设置为0,将表格边框设置为none,并折叠表格边框(以确保彩色框周围没有空格)。然后将背景色应用于TD元素,而不是tbody元素。

如果有帮助,为其他用户提供更新的答案

在Chrome上,
display:block
解决了这个问题。但是,它会导致表格出现其他布局问题,似乎不考虑宽度。相反,使用
display:table
似乎可以解决这两个问题:

tbody {
  background-color: green;
  display: table;
}

老实说,我不清楚预期的结果是什么。解释一下当前代码段和您在Firefox上想要的代码之间的区别,第一个示例对我来说是正确的。颜色在车身标签上,我可以看到。您是否在页面上正确加载了样式?如果您运行这两个代码段,输出会有所不同-即,第一个在红细胞半径处显示白色边框,第二个示例显示绿色边框。我在Mac OSX上的Chrome上,不使用tbody设置背景不是更有效吗,但是给tr分配一个类?我想可能是这样的。