html - 使用 <div> 作为父元素

标签 html css

<分区>


想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它.

关闭 6 年前

我最近一直在学习有关 html 和 css 的教程。在很多此类教程中,我看到人们使用标签,例如 <nav> , <footer>等等...,就像这样。

<someTag class = "someClass">
    <div class = "anotherClass">
        <whatever>

        </whatever>
    </div>
</someTag>

然而,做类似的事情不是更好的做法吗?

<someTag class = "someClass">
    <whatever class = "anotherClass">

    </whatever>
</someTag>

我的问题是为什么人们会在这种情况下使用 div?

最佳答案

HTML标准定义了一组允许的元素,包括NAVFOOTERDIV

任意自定义元素是不允许的。您可以在技术上使用它们,但这样的 HTML 文档在形式上是无效的,并且可能无法适应 future ,因为您的自定义元素将来可能会添加到标准中。

DIV 是一个没有语义意义的通用容器,通常只用于对其他元素进行分组以应用样式。

是直接将样式应用于 DIV 还是应用于它包含的元素,取决于具体情况。如果需要定义一条黄金法则,它可能是这样的:

DIV should contain at least one descendant level marked-up as a semantic (i. e. not DIV or SPAN) element.

If a DIV contains just inline elements or pure text, this typically indicates that markup is wrong.

关于html - 使用 <div> 作为父元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38082740/

上一篇:css - flaticon 图标在本地托管时有效,但在在线时无效

下一篇:html - div中的中间对齐图标+文本

相关文章:

javascript - 遍历带有变量的对象

html - 移动屏幕时如何将两个图像放在彼此相邻的导航栏中

css - z-index 问题下拉列表出现在内容下方

javascript - 更改 Slick slider 中的箭头按钮

jquery - 我们可以使用 PhoneGap 使用 Eclipse 以外的 IDE 构建混合应用程序吗?

html - 如何让悬停在一个类上触发其他类的变化?

php - 使用 JQuery 无法在页面加载中触发 onchange 事件

CSS Grid 响应式布局,让网站随菜单动起来

javascript - 用 JS 制作自定义文本编辑器(styler)

html - 链接到外部 css 文件