在 <footer> 中使用 <form> 在语义上没问题吗?

问题描述 投票:0回答:4

我一直在四处寻找是否可以使用这样的页脚:

<form>
   <input />
   <input />
  <footer>
   <input />
  </footer>
</form>

在我看来,它符合规格:

页脚元素代表其适用的部分的页脚

想法?

html semantics footer
4个回答
8
投票

根据http://dev.w3.org/html5/markup/footer.html

页脚元素代表它所应用的部分的页脚 到.

允许的内容
流动内容

根据http://dev.w3.org/html5/markup/terminology.html#flow-content

流程内容
流程内容由流程元素混合而成 普通字符数据

根据http://dev.w3.org/html5/markup/common-models.html#common.elem.flow

7.1。流程元素
短语元素或a或p或hr或pre或ul或ol或dl或div或h1或h2或h3或h4或h5或h6或hgroup或 地址或块引用或 ins 或 del 或对象或地图或 noscript 或 部分或导航或文章或旁白或页眉或页脚或视频或 音频或图形或表格或表单或字段集或菜单或画布或 详情

7.3。短语元素
a或em或strong或small或mark或abbr或dfn或i或b或s或u或code或var或samp或kbd或sup或sub或 q 或 cite 或 span 或 bdo 或 bdi 或 br 或 wbr 或 ins 或 del 或 img 或 嵌入或对象或 iframe 或地图或区域或脚本或 noscript 或 ruby 或视频或音频或输入或文本区域或选择或按钮或标签或 输出或数据列表或注册机或进度或命令或画布或时间 或米

输入是一个短语元素,所以是的,你可以

网上有很多参考资料

页脚通常/应该包含有关其内容的信息 元素。

页脚通常包含文档的作者、版权 信息、使用条款链接、联系信息等

但规格不止于此。


1
投票

从语法上来说,是的,你可以这样做。据我所知,它仍然是有效的 HTML。

从语义上讲,是的,如果您有理由这样做(如果这样做有意义),您仍然可以这样做。它有点像新的

<section>
元素,用于标识页面的逻辑“区域”。我认为它解释得很好here

这些新元素有助于[网络爬虫]以更像人的方式看待网站。

您甚至可以制作多个页脚

一个文档中可以有多个

<footer>
元素。


1
投票

语义就是

<footer>
表示页脚,让它保持打开状态,什么是页脚。对于
<footer>
元素没有必需的甚至推荐的处理,除了默认情况下它们应该呈现为块(这不会在所有当前浏览器上发生)。

所以答案并不重要;这只是某人对“页脚”的看法。

在实际方面,如果你使用

<footer>
,旧版本的IE不会让你设置它的样式,除非你做了一个JavaScript技巧来引入它(希望启用JavaScript)。

因此,几乎没有任何充分的理由在此处使用 class 或 id 来选择

<footer>
而不是
<div>
(或者在某些情况下,而不是
<p>
)。


0
投票

不,它本身是不行的。 为其“最近的祖先分段内容”定义页脚,但事实并非如此。部分由section、article、nav和aside元素创建,当然body元素创建页面的基本部分。

因此,将页脚放入没有看到分段元素的表单中,这在语义上是页面页脚,而不是表单页脚。要创建表单页脚,您需要将表单内容包含在一个部分中。然后您可以在该部分内使用页脚。

<form ...>
   <section>
      ... form content
      <footer>
      </footer>
   </section>
</form>

不要将表单控件(输入元素、按钮)放在页脚内。页脚内容是关于部分内容,而不是部分内容的一部分。

© www.soinside.com 2019 - 2024. All rights reserved.