Jquery CSS代码适用于一个部分,但不适用于其他部分
我想给第二栏涂颜色。我在一个.js文件中有代码:Jquery CSS代码适用于一个部分,但不适用于其他部分,jquery,css,Jquery,Css,我想给第二栏涂颜色。我在一个.js文件中有代码: if($data == 0 ){ $display.after("<tr id='after'><td></td><td>First Part</td></tr>"); return; } $display.after("<tr id='after'><td></td><td><table>..Sec
if($data == 0 ){
$display.after("<tr id='after'><td></td><td>First Part</td></tr>");
return;
}
$display.after("<tr id='after'><td></td><td><table>..Second Part...</table></td></tr>");
第二部分改变颜色,但第一部分不变
如果我使用:
#after td + td {
background-color: red;
}
或者如果我在第一部分添加一个表。两种方法都有效,为什么 您使用了错误的选择器。。如果要在
之后嵌套在中的所有td
上应用背景,则需要使用
#after td {
background-color: red;
}
或者也可以将背景应用于tr
元素
#after {
background-color: red;
}
您正在使用的第一个选择器将选择嵌套在另一个td
元素中的td
元素,该元素进一步嵌套在一个元素中,该元素在
之后有一个id,这在语义上是不正确的
使用的第二个选择器选择相邻图元。因此,它将选择与另一个td
相邻的td
,后者进一步嵌套在一个元素中,在之后
您使用了错误的选择器。。如果要在之后嵌套在中的所有td
上应用背景,则需要使用
#after td {
background-color: red;
}
或者也可以将背景应用于tr
元素
#after {
background-color: red;
}
您正在使用的第一个选择器将选择嵌套在另一个td
元素中的td
元素,该元素进一步嵌套在一个元素中,该元素在
之后有一个id,这在语义上是不正确的
使用的第二个选择器选择相邻图元。因此,它将选择与另一个td
相邻的td
,后者进一步嵌套在一个元素中,在之后
空格:它是后代选择器
#after td td { //affects tds within #after td
background-color: red;
}
+符号:
它是相邻的兄弟组合子。它组合了两个具有相同父对象的简单选择器序列,第二个选择器必须紧跟在第一个选择器之后
#after td + td { //affects only the next td of #after td
background-color: red;
}
这可能对你有帮助
#after td { //affects all the td in #after
background-color: red;
}
空格:它是后代选择器
#after td td { //affects tds within #after td
background-color: red;
}
+符号:
它是相邻的兄弟组合子。它组合了两个具有相同父对象的简单选择器序列,第二个选择器必须紧跟在第一个选择器之后
#after td + td { //affects only the next td of #after td
background-color: red;
}
这可能对你有帮助
#after td { //affects all the td in #after
background-color: red;
}
要仅在之后的中设置第二个td的样式,可以使用以下代码:
#after td:nth-child(2)
{
background-color: red;
}
编辑:
这不适用于IE8<因此,在这种情况下,您可以使用@mr.expans
#after td + td /* Selects td adjacent to another td */
{
background-color: red;
}
要仅在之后的中设置第二个td的样式,可以使用以下代码:
#after td:nth-child(2)
{
background-color: red;
}
编辑:
这不适用于IE8<因此,在这种情况下,您可以使用@mr.expans
#after td + td /* Selects td adjacent to another td */
{
background-color: red;
}
你为什么要用td选择器两次?我只想给第二列上色。哦,好的。等一下:)将添加一个答案。为什么要使用td选择器2次?我只想给第二列着色。哦,好的。稍等:)将添加一个答案。我想更改第二列的颜色,这就是为什么在td之后。问题是我不明白为什么在td之后在第二部分工作。第二部分的#在td之后和#在td+td之后有什么区别。@user1064993我在回答中解释了这两个问题,你读到了吗?我想改变第二列的颜色,这就是为什么#在td之后。问题是我不明白为什么#在td之后适用于第二部分。第二部分,td之后和td+td之后有什么区别。@user1064993我在我的回答中都解释了,你读到了吗?第二部分:td之后和td表之后有什么区别吗?第二部分:td之后和td表之后有什么区别吗?注意:这在IE8中会失败是的,我知道。将为我的答案添加一个修正。这里不需要上课,因为我在我的答案中给出了一个解决方案,+
将起作用kwel:)呵呵,谢谢,我不想投票,我只想说的是,你可以将该解决方案添加到你的答案中,这是一个被接受的解决方案,所以人们会参考你的答案。现在你找到我了:)我们也会投票给你的答案,这是一个很好的解决方案,但我没有提出建议,因为我认为他想在
之后针对嵌套在中的单个td注意:这将在IE8中失败是的,我知道。将为我的答案添加一个修正。这里不需要上课,因为我在我的答案中给出了一个解决方案,+
将起作用kwel:)呵呵,谢谢,我不想投票,我只想说的是,你可以将该解决方案添加到你的答案中,这是一个被接受的解决方案,所以人们会参考你的答案。现在你找到我了:)我们也会投票给你的答案,这是一个很好的解决方案,但我没有提出建议,因为我认为他想要针对嵌套在\after