2012-12-18 91 views
0

我有一个超级简单的页面:一个div的高度设置为70%

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8" /> 
    <link rel="stylesheet" href="@Url.Content("~/ui/all.min.css")" type="text/css" /> 
</head> 
<body> 
    <div class="header"> 

</div> 

</body> 
</html> 

和CSS:

.header 
{ 
    height:70%; 
    width:100%; 
    background:#990663; 
} 

body 
{ 
    margin:0px; 
    padding: 0px; 
    height:100%; 
    width:100%; 
} 

* 
{ 
    margin: 0px auto; 
} 

我想在div高度是屏幕的70%。我怎样才能做到这一点?如果我把400px的高度,它的作品。那么为什么不70%呢?任何想法如何实现这一目标?

回答

3

你只需要更新html有100%的高度(以及body):

html, body { height: 100%; } 

JSFiddle

这是因为100%总是相对于容器(对于bodyhtml)。

一个helpful post on the topic is here。 FTA:

首先,我们需要给html和body标签100%的高度。 这经常被忽略,但是非常重要,因为没有元素会调整到百分比高度,除非它知道它的父高度 当前占据了什么。由于容器是标签的后代 标签是html标签的后代,因此这是必需的。

1

只需将100%添加到HTML的高度,就可以对它进行排序。

html{ 
    height:100%; 
} 

Check here