[问题] Child combinator >

楼主: kisha024 (4545454554)   2023-07-04 13:38:51
各位好
https://jsfiddle.net/rxd8eyw1/
如上连结
table > tr {
color: red;
}
<table>
<tr>
<th></th>
<th scope="col">国文</th>
<th scope="col">英文</th>
<th scope="col">数学</th>
</tr>
<tr>
<th scope="row">张三</th>
<td>78</td>
<td>60</td>
<td>98</td>
</tr>
<tr>
<th scope="row">李四</th>
<td>67</td>
<td>65</td>
<td>85</td>
</tr>
<tr>
<th scope="row">王五</th>
<td>69</td>
<td>85</td>
<td>45</td>
</tr>
</table>
https://developer.mozilla.org/en-US/docs/Web/CSS/Child_combinator
在HTML的结构上 tr 应该是 table 的 direct child 吧
但 table > tr 这样写,好像没 match 到 tr
我知道可以用 table tr, 但为什么 table > tr 不行呢?
谢谢
作者: nick8195 (煎饼)   2023-07-04 13:46:00
虽然html当中没有使用,但结构上table底下还有tbody改成table>tbody>tr就能达到效果了
作者: qptw (老鱼儿)   2023-07-04 15:02:00
>是子代,也就是TABLE里面第一子层必须是TR,而空格则是后代的概念,TABLE 里面可以隔着别人,只要找到TR就可以了
作者: microloft (微阁)   2023-07-04 15:28:00
承1楼,就算你没写tbody,浏览器还是会自动帮你加
作者: nottt (无)   2023-07-04 16:32:00
https://i.imgur.com/gyjgenB.png 不要相信自己的原始码以浏览器渲染出来的为主,因为可能被js或其他外挂更换html

Links booklink

Contact Us: admin [ a t ] ucptt.com