问题:在HTML页面中声明<!DOCTYPE html>,页面中div属性设置100%页面显示不正常


body {
max-width: 720px;
margin: 0 auto;
}
.case {
background-color: #68CDD5;
height: 100%;
}
页面中case为最大的div的class,设置了height:100%,页面并未正常显示,蓝色部分并未铺满整个页面。
原因:在HTML5标准要求高度或宽度设置成百分比时,参照的是父标签。
解决:
<div>标签的父标签是<body>,<body>标签的高度也需要定义,很多人以为这样设置后也可以正常显示,然而并不是,因为<body>标签的高度虽然设置成100%了,但<body>标签父标签是<html>标签,这个标签也是需要定义高度的。所以最终要添加的参数是html,body {height:100%;}。
html和body之间是逗号,不是空格。说明这是一个多标签选择器,不是派生选择器。
html,body {
max-width: 720px;
margin: 0 auto;
height: 100%;
}
.case {
background-color: #68CDD5;
height: 100%;
}
正常的页面显示如下

网友评论