在IT技术中,是否有必要将导航(ul标签)包装在div或nav标签中?

5

有人会将导航 (<ul> 标签) 包裹在一个 <div> 中,并在 <div> 上应用 margin/padding 样式。

我们可以直接给导航元素 <ul> 添加样式属性,而不需要使用 <div> 并在其上添加 margin 和 padding 属性。因此,在将 <ul> 放入 <div> 中是必需的吗?还是只是个人喜好?

对于 HTML5,一些浏览器已经实现了它,是否有必要将用于导航的 <ul> 标签放入 <nav> 标签中呢?例如像这个 Smashing HTML5 演示页面


欢迎来到Stack Overflow,开发者。 - Sampson
3个回答

4
不,没有必要用外部的
包装
    导航。在我所见过的大多数情况下,人们之所以使用它,只是因为他们习惯于将所有东西都包裹在
    中(divitis)。
    然而,在某些情况下,确实需要在导航列表周围包装一个
    。例如,当您想要应用多个背景 - 一个在
    上,另一个在
      上,控制-填充/边距-各自独立时。
      额外的
      也可以用于正确结构化文档。
      关于html5的<nav>标签,可以将其视为语义化定义代码的一部分,以便阅读代码的任何人(无论是人还是机器人(例如搜索引擎机器人))都能确切知道<nav>标签内部的部分将是导航(或者至少应该是),无论导航是通过<ul>实现还是只是由管道符号|分隔的普通链接。

2
如果你正在制作HTML5网页,并且不介意在Internet Explorer中解决HTML5新元素的缺乏支持问题,那么你应该将你的导航内容放在一个<nav>标签中。
(就像你应该用<p>标签包含段落一样——这就是标记语言,通过标签来描述内容。)
至于是否需要将你的导航列表放在一个<div>标签中,这并不是必须的,但通常出于样式设计的考虑,会有所帮助。

0
不,这并非必须的,但这取决于布局。 <div> 提供了更多控制文档段位置的方式,因此他们可能只是出于这个目的使用 div。

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