如何设置%的高度,即使我使用?

时间:2013-10-09 14:23:09

标签: jquery html css dom doctype

是否可以在百分比中设置 div 高度,即使我使用<!doctype>

我的 jsp 页面已完全设计,没有 doctype ,并动态创建了大量 div div 高度仅在中给出。

但是现在我不得不添加 doctype 来完成jquery dialog box和其他一些 jquery插件的工作?

我的需要:

  1. 如何将div高度设为百分比%,即使我添加了<!DOCTYPE>
  2. 希望我们的堆栈用户能帮助我。

4 个答案:

答案 0 :(得分:1)

使用<!doctype>将确保浏览器知道您正在使用的HTML版本。

不使用<!doctype>会导致浏览器使用自己的默认设置,导致浏览器兼容性较低。它可以在IE9中运行良好,而不是在IE10中运行,或者在Safari中运行良好,而不是在Chrome等...

强烈建议始终使用<!doctype>

答案 1 :(得分:1)

简短的回答是,如果您没有doctype,很多会破坏。这包括jQueryUI。如果您想使用现代浏览器功能和JavaScript库,那么您必须拥有有效的doctype。

这真的不是一个选择; doctype告诉浏览器进入标准模式。如果没有它,它将处于怪癖模式,已经过时了十多年。现代Javascript库根本不适用于此模式。

那么问题就变成了如何在不破坏页面布局的情况下添加文档类型?

如果您的网站设计时没有doctype,那么添加doctype时会有很多不同之处,但主要的是框模型。这决定了元素宽度与paddingmarginborder一起使用的方式。旧的Quirks模式框模型与现代标准模式完全不同,您的布局也会受到影响。

幸运的是,您可以非常轻松地解决这个问题:在CSS代码中添加以下内容:

* {box-sizing:border-box;}

这将告诉您的页面使用旧样式框模型,即使在标准模式下也是如此。现在,使用doctype,您的页面布局应该会更好。

可能会影响您的其他布局差异,但这是最大的,也是最容易修复的。从那开始,然后看看还有什么问题;如你所见,处理剩余的问题应该相当简单。

我希望有所帮助。如果您还有其他问题,请尝试搜索此站点(以及更广泛的互联网)以获得更多帮助,从Quirks模式转换为标准模式 - 这是一个常见问题,因此您应该找到很多帮助。

答案 2 :(得分:1)

最后,我通过在 css 中添加以下代码获得了解决方案,即使我的 <doctype>中有JSP

解决方案一:

html,body {

   height: 100%;
   width: 100%;

}

解决方案二:

  1. div css 设置为absolute

答案 3 :(得分:1)

如果你给div absolute定位,你可以给Div的高度