首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以在表单中使用<caption>标记吗?

可以在表单中使用<caption>标记吗?
EN

Stack Overflow用户
提问于 2011-02-14 16:58:02
回答 3查看 14.9K关注 0票数 5

我可以在表单中使用<caption>标记吗?若否,原因为何?

示例:

代码语言:javascript
复制
<form>
<caption>description</caption>
<label>name:</label>
<input />
</form>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-02-14 17:00:37

你真的先试过了吗?

回答:不是。(嗯,你可以,但它会违反标准)。

元素用于为表添加标题,而不是为表单添加标题。

替代解决方案:

如果你真的想给表单添加标题,只需添加一个可以用CSS设置样式的有效元素,如下所示:

代码语言:javascript
复制
<form>
    <div class="caption">This is my form caption</div>
    <input .../>
</form>

另一种可能在语义上更正确的方法是使用对表单进行分组:

代码语言:javascript
复制
<fieldset>
    <legend>This is my form caption</legend>
    <form>
        <input .../>
    </form>
</fieldset>
票数 15
EN

Stack Overflow用户

发布于 2011-02-14 17:03:44

您可能正在寻找标记?

票数 3
EN

Stack Overflow用户

发布于 2020-09-13 22:33:45

不是,caption元素特定于表。有人可能会争辩说,这是一个奇怪的案例,无论是谁帮助创造了今天的HTML,它都不能与表单一起使用。此外,尝试对表单使用caption也有语义上的含义,因为它只显示表格而不是表单。

在超文本标记语言中“标题”或“标题”内容,包括声明表单和表单内容,惯用的方法是使用标题标签h1h2等。这些标题标签在帮助声明内容方面是通用的,因此您可以将它们放在或嵌套在form元素中。

在您的情况下,您将拥有:

代码语言:javascript
复制
<form>
<h1>description</h1>
<label>name:</label>
<input />
</form>

或者您也可以将heading元素直接放在form元素之前:

代码语言:javascript
复制
<h1>description</h1>
<form>
<label>name:</label>
<input />
</form>

我认为前者在语义上更适用,但有时某些因素,如CSS的能力,将需要使用后者。无论哪种情况,都应该是有效的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4990300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档