HTML5中将表格元素放入列表元素是否有效?

5
那么问题来了,我能做这样的事情吗?
<li><table></table></li>

我无法在我的工作场所检查W3,因为它已被禁用...


您可以在桌面上编写HTML5并进行检查。 - Hariharan
10
"我无法在工作场所访问W3,因为它被禁用了..." 你在哪里工作,需要屏蔽类似w3.org这样的网站? - BoltClock
2
是的,你可以在里面放置表格。 - Hariharan
2
@wintercounter — 所以请下载验证器并安装本地副本。 - Quentin
1
@Quentin:等他下班后 :) - BoltClock
显示剩余3条评论
4个回答

16
你不一定需要去W3获取这种信息。Mozilla开发者网络是一个极好的资源,里面包含了关于标准和兼容性的大量信息。例如,<li>元素页面描述如下(强调是我的):

内容类别:无。
允许的内容:流内容。

甚至还有一个描述流内容的部分

属于流内容类别的元素通常包含文本或嵌入式内容。它们是:<a>, <abbr>, <address>, <article>, <aside>, <audio>, <b>, <bdo>, <blockquote>, <br>, <button>, <canvas>, <cite>, <code>, <command>, <datalist>, <del>, <details>, <dfn>, <div>, <dl>, <em>, <embed>, <fieldset>, <figure>, <footer>, <form>, <h1>, <h2>, <h3>, <h4>, <h5>, <h6>, <header>, <hgroup>, <hr>, <i>, <iframe>, <img>, <input>, <ins>, <kbd>, <keygen>, <label>, <map>, <mark>, <math>, <menu>, <meter>, <nav>, <noscript>, <object>, <ol>, <output>, <p>, <pre>, <progress>, <q>, <ruby>, <samp>, <script>, <section>, <select>, <small>, <span>, <strong>, <sub>, <sup>, <svg>, <table>, <textarea>, <time>, <ul>, <var>, <video>, <wbr> 和文本。

因此,这些页面告诉我们,在<li>标签内使用<table>标签是有效的。当然,在HTML规范的镜像网站上也可以找到此信息,我只是觉得MDN更容易浏览。

0

litable都是块级元素,因此没有已知的限制。但是,如果您怀疑页面是否有效,有一种简单的方法可以检查:W3C验证器

例如,创建这样的页面:

<!DOCTYPE html>
<html>
<head>
    <title>A</title>
</head>
<body>
    <ul>
        <li>
            <table></table>
        </li>
    </ul>

    <span>
        <div></div>
    </span>
</body>
</html>

尝试验证它。你会看到关于块级元素div在内联元素span中的错误,但是你不会看到任何关于li > table的内容。


litable都是块元素,因此没有已知的限制。”事情并不总是那么简单。 - BoltClock
在现实世界中,情况通常并不那么简单,然而,使用验证器通常是一个好主意。 - Tommi

0

很好。我在想您是否真的需要一个表格,或者您可以使用div和CSS。当我需要表示表格/网格时,我更喜欢使用表格,而使用div来进行布局。


0

是的,你可以做到,但在表格开始之前会有列表项符号。


1
我想这就是在列表项中放置表格的全部意义所在。 - BoltClock
是的,这可能是wintercounter的意图。我同意@BoltClock的看法。 - Hariharan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接