Html CSS类适用于表格内部,但不适用于表格本身

Html CSS类适用于表格内部,但不适用于表格本身,html,css,Html,Css,下面是一个简单的CSS代码,但我不明白为什么它不工作 <!DOCTYPE html> <html> <head> <style> .border-on * { border: 1px solid black; } </style> </head> <body> <table class="border-on"> <tr> <th>Firstnam

下面是一个简单的CSS代码,但我不明白为什么它不工作

<!DOCTYPE html>
<html>
<head>
<style>
.border-on * {
    border: 1px solid black;
}
</style>
</head>
<body>
  <table class="border-on">
    <tr>
      <th>Firstname</th>
      <th>Lastname</th> 
      <th>Age</th>
    </tr>
    <tr>
      <td>Jill</td>
      <td>Smith</td>
      <td>50</td>
    </tr>
  </table>
  </body>
</html>

.边界*{
边框:1px纯黑;
}
名字
姓氏
年龄
吉尔
史密斯
50
CSS样式适用于td和th,但不适用于表格!这张桌子看起来像这样

当我再次将相同的样式添加到表选择器时,效果很好

<table class="border-on" style="border: 1px solid black">


我有不同的表,所以我需要使用类来定义每个表。

在css中使用
*
选择器将获取所有子元素,而不是所选的子元素。这是默认行为

*
是一个通用选择器,表示“所有子对象”,但不表示对象本身。我修改了CSS以包含表本身

。边界上,
.边界*{
边框:1px纯黑;
}

名字
姓氏
年龄
吉尔
史密斯
50