&引用;高度=100%“;使用<;时无法在html中工作;!DOCTYPE>;?

&引用;高度=100%“;使用<;时无法在html中工作;!DOCTYPE>;?,html,Html,当我使用不带DOCTYPE的HTML时,我的HTML页面Height=100%工作正常 但是当我使用DOCTYPE时,height不能正常工作 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang

当我使用不带
DOCTYPE
的HTML时,我的HTML页面
Height=100%
工作正常

但是当我使用
DOCTYPE
时,height不能正常工作

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>New Page 1</title>
</head>

<body>

<table cellpadding="0" cellspacing="0" width="11" height ="100%">
    <tr>
        <td height="100%" bgcolor="#008000">&nbsp;</td>
    </tr>
</table>

</body>

新的第1页


如何解决这个问题?

当你说“身高=100%”时,你必须想“100%是什么?”。它是作为主体的表元素的父元素。但是身体有多高

要执行所需操作,请在CSS中添加以下内容:
html,body{height:100%}

添加
DOCTYPE
可将您从标准模式切换到标准模式。在标准模式下,
html
body
元素不会默认为视口(浏览器窗口)大小的100%;相反,它们只有容纳孩子所需的大小。
table
height为100%表示包含元素的100%,但该值仅为包含表内容所需的最大值。怪癖模式是对旧浏览器行为的模拟,其中
html
body
元素填充了视口

要解决此问题,您只需将以下内容添加到文档中:

<style>
  html, body { height: 100% }
</style>

html,正文{高度:100%}

正如大家所说,解决方案的主要部分是

html,正文{'height=100%}

但将每个祖先的身高设定为100%也非常重要。例如,如果您的代码如下所示

<body>
    <div id="firstdiv">
         <div id="scnddiv">
               lets say this is the div you want to make 100%
         </div>
    </div>
</body>
那你就可以把那个div里的任何东西都变成100%


我希望这能有所帮助。

我尝试了上面的方法,但宽度(100%)有效,但高度无效。你能用你正在尝试的确切代码编辑你的帖子吗?它在哪个浏览器上失败了?我在Firefox中测试过,结果还可以。感谢@Brian CampbellI刚刚读了这个11岁的答案,它让我走上了正确的道路,解决了我非常令人沮丧的问题。我还需要在一些css类中添加“height:100%”。非常感谢。以下是DOCTYPE问题的简单明了的解释:
html, body, #firstdiv {height:100%}