内容div显示在固定的页脚div下面

时间:2013-09-25 01:32:23

标签: html css

我正在重新设计我的启动页面。目前我已经能够让我的页脚div沿着页面底部运行并以固定位置为中心,我将其用作菜单。然而,我遇到的唯一问题是,因为此页脚/菜单div具有透明背景,如果其上方的内容div包含的信息多于页面上可以容纳的信息,则文本显示在页脚/菜单div下方,菜单难以理解。有没有什么办法可以让内容div的高度只运行到这个固定的页脚/菜单的顶部,所以内容中的文本不会在下面运行?

我的CSS设置如下:

/*Global Settings*/
@import url(http://fonts.googleapis.com/css?family=Istok+Web);

* { margin: 0; outline: medium none; padding: 0; }

body { font: .9em 'Istok Web',sans-serif; background: url('../images/iQwallpaper.jpg') center center no-repeat fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }

/*DIVS*/
div.header-outer { max-width: 100%; margin: 20px 20px 20px 20px; }

div.menu-outer { width: 100%; background: rgba(255,255,255,0.2); position: fixed; bottom: 0px; }

div.dashboard { max-width: 100%; max-height: 80%; overflow: auto; margin: 0 auto; }

div.left { float: left; }

div.right { float: right; }


/*MENU*/
#centeredmenu { float:left; width:100%; overflow:hidden; position:relative; }

#centeredmenu ul { clear:left; float:left; list-style:none; margin:0; padding:0; position:relative; left:50%; text-align:center; }

#centeredmenu ul li { display:block; float:left; list-style:none; margin:0; padding:0; position:relative; right:50%; }

#centeredmenu ul li a { display:block; margin:0; padding: 20px; color:#FFFFFF; text-decoration:none; }

#centeredmenu ul li a:hover { background:#369; color:#fff; }

#centeredmenu ul li a.dashboard { background: rgba(255,51,51,0.3); }

#centeredmenu ul li a.dashboard:hover { background: rgba(255,51,51,0.6); }


img.icon { height: 200px; display: inline; margin: 25px 50px 25px 50px; }

.white { color: #f2f2f2; }

标签中的HTML如下:

<div class="header-outer">
<div class="left">
<h2 class="white">iQlaunch</h2>
</div>
<div class="right">
<p class="white">v 14.0.0 alpha</p>
</div>
<div class="clear"></div>
</div>

<div class="dashboard">
<p class="white">a bunch of text to get it to fill the page</p>
</div>

<div class="menu-outer">
<div id="centeredmenu">
<ul>
<li><a href="#" class="dashboard">Dashboard</a></li>
<li><a href="#">Customer Sites</a></li>
<li><a href="#">Support Tools</a></li>
<li><a href="#">Important Numbers</a></li>
<li><a href="#">Helpfiles for Everyone</a></li>
<li><a href="#">Helpfiles for Support</a></li>
<li><a href="#">Internal Sites</a></li>
<li><a href="#">Scheduling</a></li>
<li><a href="#">Staff Phone Directory</a></li>
<li><a href="#">Training Presentations</a></li>
<li><a href="#">Mobile News Sites</a></li>
</ul>
</div>
</div>

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

哪个部分包含您的所有内容?我建议将“溢出”CSS设置更改为hiddenscroll

http://www.w3schools.com/cssref/pr_pos_overflow.asp

答案 1 :(得分:0)

我实际上想出了如何做我想做的事。我最终创建了两个父div:

div.menu-outer { width: 100%; display:block; position: fixed; bottom: 0px; background: url('../images/iQwallpaper.jpg') center center no-repeat fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; /*background: rgba(255,255,255,0.2);*/ }

div.menu-inner { background: rgba(255,255,255,0.2); }

第一个父div使用与body相同的背景设置,然后第一个父div使用透明颜色。这使得它看起来从身体透明,但它确实不是。 :)