Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.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
html-在div中包含td_Html - Fatal编程技术网

html-在div中包含td

html-在div中包含td,html,Html,我有一个表,并希望在其中包含一个div,以便div包含一些表行。但是它不起作用 <table> <tr><td> one</td></tr> <div style="color: yellow;"> <tr><td> two</td></tr> <tr><td> three</td></tr> </div> <

我有一个表,并希望在其中包含一个div,以便div包含一些表行。但是它不起作用

<table>
<tr><td> one</td></tr>

<div style="color: yellow;">
<tr><td> two</td></tr>
<tr><td> three</td></tr>
</div>

<tr><td> four </td></tr>
</table>

一
二
三
4
是否可以将表行括在div中


非常感谢您提供的任何建议。

不,这是不可能的

表格中唯一可以放置任何内容的地方是单元格内部

也许您希望在表中包含页眉和页脚?请注意,页脚位于正文之前:

<table>
  <thead>
    <tr><td> one</td></tr>
  </thead>
  <tfoot>
    <tr><td> four </td></tr>
  </tfoot>
  <tbody style="color: yellow;">
    <tr><td> two</td></tr>
    <tr><td> three</td></tr>
  </tbody>
</table>

一
4
二
三
这是可能的(您刚刚做了),但强烈建议不要这样做,因为根据w3c规范,您不能在
表下嵌套
div
。浏览器的行为可能会有所不同,因为此处不需要定义行为。

使用
标记将行分组:

<table>
    <tr><td> one</td></tr>
    <tbody style="color: yellow;">
        <tr><td> two</td></tr>
        <tr><td> three</td></tr>
    </tbody>
    <tbody style="color: red;">
        <tr><td> four </td></tr>
    </tbody>
</table>

一
二
三
4

.

这将是无效的HTML。。所以不可能

您可以将类添加到所需的行中,并使用css对其进行样式设置

<table>
<tr><td> one</td></tr>
<tr class="colored"><td> two</td></tr>
<tr class="colored"><td> three</td></tr>
<tr><td> four </td></tr>
</table>

如其他答案中所述,您可以使用for分组,这允许在一个表中有多个实例

<table>
    <tr><td> one</td></tr>
    <tbody class="colored">
        <tr><td> two</td></tr>
        <tr><td> three</td></tr>
    </tbody>
    <tr><td> four </td></tr>
    <tbody class="colored">
        <tr><td> five</td></tr>
        <tr><td> six</td></tr>
    </tbody>
</table>

一
二
三
4
五
六

演示

正如其他人所提到的,您想要做的是不可能的。但是,您可以简单地将这两个s设置为“color:yellow”样式以实现类似的效果。您可以在HTML代码中编写它,但浏览器不会将div元素放在row元素周围。可能不会。但是我看到很多无效的HTML片段在做一些奇怪的事情。谁知道在所有浏览器中会有什么结果呢。非常感谢你的建议,最后选择了标记。唯一确定的是div元素不会在标记所在的位置结束。一些可能的结果是div在表之前、表之后、隐式创建的单元格中结束,或者被忽略。
<table>
    <tr><td> one</td></tr>
    <tbody class="colored">
        <tr><td> two</td></tr>
        <tr><td> three</td></tr>
    </tbody>
    <tr><td> four </td></tr>
    <tbody class="colored">
        <tr><td> five</td></tr>
        <tr><td> six</td></tr>
    </tbody>
</table>