我使用默认的VS doctype
时遇到问题<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
在我的页面上,我有一个内容框,其中包含两个div,一个向左浮动,另一个向右浮动。右浮动div包含高度:100%,但是,永远不会应用它来匹配左div的高度。
当我删除IE8中的doctype(坏,我知道,但只是测试...)时,该网站看起来像狗早餐,而在Chrome和Firefox中,它看起来就像我想要的那样。
答案 0 :(得分:3)
您应该使用适合您编码的HTML版本的任何doctype。例如,对于HTML 5,<!DOCTYPE HTML>
。
答案 1 :(得分:2)
没有DOCTYPE基本上意味着浏览器会假设破坏HTML并且会尝试猜测,所以你永远不会得到连贯的结果。只需选择您选择的任何规范(我尽量避免使用XHTML,但这是一个品味问题)并通过HTML验证器运行您的代码,直到它没有错误。
答案 2 :(得分:1)
您应该使用以下文档:
您拥有的Doctype触发了标准模式,因此您只需要弄清楚为什么浏览器无法按预期呈现内容(这很可能是因为您的CSS或标记中的错误可能被检测到使用validator)。
答案 3 :(得分:0)
不是答案:搜索两个列布局。
提示:搜索“clear:both”式解决方案。 (见http://www.quirksmode.org/css/clearing.html)
答案 4 :(得分:0)
您是否正在寻找两个高度相同的div?在标准模式下永远不会出现这种情况,因为div的行为与表格单元格的行为不同。表格单元格拉伸以满足表格的尺寸,div是独立的容器,并且行为方式不同。
然而,有一些解决方案,如人造柱技术。