Html 想知道为什么自动关闭div不工作?

Html 想知道为什么自动关闭div不工作?,html,css,Html,Css,可能的重复项: 有人能解释一下为什么会这样吗 .lineBreak10 { height: 10px; } ->不起作用 ->效果很好,虽然这是有效的XHTML,但不是有效的HTML4.* 这么简单…这不是div应该如何工作的。它们是块级元素,你应该能够把东西放进去 此外,看起来您正试图使用div在两个元素之间创建视觉风格空间。这不是HTML的用途。这就是CSS的用途 因为它是一个标记容器,即使它可以用javascript填充 ->因为HTML不是XML 虽然HTML看起来很像XML

可能的重复项:

有人能解释一下为什么会这样吗

.lineBreak10
{
    height: 10px;
}
->不起作用

->效果很好,虽然这是有效的XHTML,但不是有效的HTML4.*


这么简单…

这不是div应该如何工作的。它们是块级元素,你应该能够把东西放进去


此外,看起来您正试图使用div在两个元素之间创建视觉风格空间。这不是HTML的用途。这就是CSS的用途

因为它是一个标记容器,即使它可以用javascript填充


->因为HTML不是XML

虽然HTML看起来很像XML,但它实际上是一个完全独立的东西,不受相同规则的约束


如果您使用XHTML作为web浏览器的XML,则自动关闭元素不起作用是一个错误,但如果您将文档作为HTML提供,则与XML和HTML相似性相关的所有规则都将被删除。

您使用的是什么doctype?我不知道?虽然JezenThomas提出了一些非常好的观点,但这是这个问题唯一正确的答案。这可能是正确的答案,但只要我问了这样一个问题,很明显我在这个问题上没有那么先进。这个答案让我感到困惑,因为所有的XHTML、XML和HTML。我只是读一些东西来了解我在用什么,所以它是@bokkie:The!DOCTYPE不重要,因为XML不重要,而在HTML中,它已经到了根本没有意义的地步。唯一重要的是文档从服务器发送到浏览器时的内容类型:如果它是application/*xml,则所有元素都是自关闭的有效元素;如果是text/html,那么只有br、hr、meta、link和img才是愚蠢的。@WillihamTotland:谢谢,这一点现在更清楚了:唯一的问题是我不知道在哪里检查它是application/*xml还是text/html:@bokkie:你有没有告诉服务器你想要它作为xml服务?如果不是,那就是text/html。虽然这是真的,但它并不能真正回答问题。好的,谢谢……虽然我希望在控件之间留出空间不是一种错误的方法……但拥有一些10,20,40px的类要容易得多。@bokkie:Easy并不意味着正确。@WIllihamTotland我知道,这就是为什么我说我希望这不是错的:那么什么是更好的方法呢?是否在此div下的每个控件上使用padding top:x px?这意味着,如果我有5个类的divlineBreak10,lineBreak20,lineBreak40。。。我将决定不再使用它们,我将不得不让我的每一个类5?假设我有一个标签的类,给它一个颜色和字体…那么这意味着我必须制作这个类的其他四个,每个都有不同的填充顶部?这意味着我会有很多类……除非有不同的方法?@bokkie:class应该指页面和内容上下文中元素的用途,而不是它的外观。此外,在任何给定的文件中,各元素之间的间距应相当一致,只要这些元素属于同一类型,例如h3和p之间的间距应相当一致。CSS有很多选择器,请使用它们。