<!DOCTYPE html>声明下div高度100%的问题

发布时间:2020-07-27 16:15:51 作者:thinker001good
来源:网络 阅读:502

在使用HTML代码创建网页,如果声明了<!DOCTYPE html>,并且在代码中有div设置了高度为100%,可能会出现显示不正常的情况。比如下面这个代码:

<!DOCTYPE HTML>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
        * {margin:0px;padding:0px;}
            div {
                background-color:red;
                width:200px;
                height:100%;
                }
    </style>
</head>
<body>
            <div></div>
</body>
</html>


显示的结果是:啥都木有! Why?

原因在于html5标准要求高度或宽度设置成百分比时,参照的是父标签。这句话理解了问题也就好办了。<div>标签的父标签是<body>,我们会天真的认为<body>标签的高度不需要定义,恰恰是因为<body>标签的高度没有定义所以才导致<div>显示不正常。在css里面添加一个参数 body {height:100%;},预览,结果是:还是木有!

为什么呢?<body>标签的高度虽然设置成100%了,但<body>标签他爹是<html>标签,这个标签也是需要定义高度的。所以最终要添加的参数是html,body {height:100%;}

请注意了,html和body之间是逗号,不是空格。说明这是一个多标签选择器,不是派生选择器。


推荐阅读:
  1. Jquery实现<textarea>根据内容自动改变大小
  2. HTML上标<sup>与下标注<sub>标签元素是什么

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

html 高度 doctype

上一篇:HADOOP监控

下一篇:CS1:Server 2003 文件路径过长导致最末文件夹权限无法继承上层文件夹权限

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》