Html 如果您需要到处清除块,无表设计的好处是什么?
我理解从Html 如果您需要到处清除块,无表设计的好处是什么?,html,css,semantic-markup,Html,Css,Semantic Markup,我理解从转向标记的目标是有意义的,因为它更具语义。但是,如果您仍然需要一个清除块以使基于列的布局工作,我不理解这样做的好处。例如: <!-- Note: location-info & personal-info both float left. --> <div class="contact"> <div class="personal-info"> <p> Shawn, etc, etc
转向
标记的目标是有意义的,因为它更具语义。但是,如果您仍然需要一个清除块以使基于列的布局工作,我不理解这样做的好处。例如:
<!-- Note: location-info & personal-info both float left. -->
<div class="contact">
<div class="personal-info">
<p>
Shawn, etc, etc
</p>
</div>
<div class="location-info">
<p><address>etc</address></p>
</div>
<br style="clear:both" /> <!-- clearing block -->
</div>
肖恩等
等
额外的
标记严格用于描述样式,并且是使布局正常工作所必需的。这难道不会毁掉从删除表中获得的所有好处吗?如果我告诉你一个清除块怎么办
。清除块:在{
内容:“.”;
显示:块;
身高:0;
明确:两者皆有;
可见性:隐藏;
}
1.清堵{
显示:内联块;
}
你的内容在这里
这里有更多内容
一点也不。避免使用表还有很多其他好处
转向
标记的目标是有意义的,因为它更具语义
实际上,情况恰恰相反:从
移动到
会降低HTML的语义。事实上,(and)元素的全部要点是没有语义
当我看到一大堆被描述为“语义HTML”的
时,我总是很生气。不,不是!这就是非语义HTML!特别是如果它包含大量的
,
和我个人的最爱
和
不要误解我的意思,使用非语义的
s肯定比使用错误的语义
s要好,但更好的是使用语义正确的元素——尽管在许多情况下,问题是HTML不提供任何。例如,在代码段中,您使用了,该元素不是用来标记地址的!它只是用来标记页面作者的地址——看样子它完全没有用
您发布的示例缺少很多上下文,因此很难说,但实际上您可能希望显示表格或层次数据,在这种情况下,
s或
s可能是更好的选择
与您的问题完全无关:您可能想看一下和微格式。我个人使用clearfix黑客来满足我的清理需求
/*Clearfix*/
#内容:之后,,
.盒子:之后{
内容:‘’;
显示:块;
明确:两者皆有;
可见性:隐藏;
身高:0;
}
#内容,,
.盒子{
缩放:1;/*IE*/
}
注意,我只是用逗号分隔选择器,而不是将clearfix
类添加到所有内容中。它工作得非常好。唯一的问题是zoom
属性是IE特有的,无法验证,但是没有像其他属性那样的副作用,例如overflow:auto
我已经在专业网站上使用了5年,没有任何问题。我说的是在这种特定情况下,两栏布局的答案也适用于这种特定情况。使用现有资源比使用表格要好得多。这样你就有了1个无关的标签(大部分可以忽略),另一种方式你至少有10个不可忽略。此外,正如安娜卡塔的链接所示,这似乎是多余的。嘿,这也是真的,很高兴看到这个建议,这意味着人们在做正确的事情,大部分:)是真的,虽然我不认为桌子是这里最好的选择。这不是我所说的表格数据。只有OP会确切知道。对我来说,这听起来像是他试图在没有表格的情况下显示表格数据。我想你会发现,神奇的单词是“hasLayout”-在这三个链接中的任何一个上尝试IE6的ctrl+f。最终,Sie8摆脱了hasLayout的胡说八道。大约逾期10年了,但我们必须拿我们能得到的东西……:)值得一提的是,如果您正在显示表格数据(看起来是这样的),那么您仍然应该使用表。div-division有一定的意义。看看他的示例,它的语义要比基于表的等价物好得多。div表示包含的信息在语义上是相关的。诸如“个人信息”之类的类在语义上标识信息。你在这里所说的只是“如果你分配的类非常糟糕,并且使用了错误的标记,那么它就没有更多的语义了!