在使用Twitter Bootstrap设置样式并使用导航栏的页面上,我想用导航栏下方的整个容器填充Google地图。为了实现这一点,我在下面添加了CSS。
我将html
和body
元素的大小定义为100%,以便将其用于地图的大小定义。然而,这个解决方案产生了一个问题:
地图的高度现在与整个页面高度相同,这会产生一个滚动条,我可以滚动导航栏添加的40px。如何将地图的大小设置为导航栏的100% - 40px
?
#map {
height: 100%;
width: 100%;
}
#map img {
max-width: none;
}
html, body {
height: 100%;
width: 100%;
}
.fill {
height: 100%;
width: 100%;
}
.navbar {
margin-bottom: 0;
}
为了完整性,HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<!-- Stylesheets -->
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/core.css">
</head>
<body>
<div class="navbar">
<div class="navbar-inner">
</div>
</div>
<div class="container fill">
<div id="map">
</div>
</div>
</body>
</html>
答案 0 :(得分:24)
您可以通过绝对定位来解决问题。
.fill {
top: 40px;
left: 0;
right: 0;
bottom: 0;
position: absolute;
width: auto;
height: auto;
}
你也可以制作导航栏.navbar-fixed-top
并以某种方式在#map
元素中添加填充或边距。