CSS布局,页脚是中途内容

时间:2015-10-15 03:56:36

标签: html css3

我需要有人来帮助我。在我的CSS布局中,页脚位于内容的中间位置,而不是位于正下方。我的代码可以在这里看到。请帮助我,不知道出了什么问题,花了太多时间在这上面。

HTML:

    <title>My Reporting System</title>
    <link rel="stylesheet" type="text/css" href="style.css" />    
<body>
    <div id="user-logged">
        You are logged in as : <strong>User</strong><br>Logout
    </div>
    <hr>
    <div>
        <a id="logo" href=".">
            <img id="logo" src="images/logo.png" alt="BRS"/>
        </a>
        <div id="sidebar"> 
            <h1 style="color:#fff; padding-left:20px; font-size:15px;">
                My Reporting System
            </h1>
            <ul>
                <li>Outlet Settings</li>
                <li>Update Daily Stats</li>
                <li>Void Stats</li>
                <li>Email Report</li>
            </ul>
        </div>
    </div>
    <div class="body-content">
        Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam  
    pharetra eget lacus vitae elementum. Morbi a justo est. Aenean aliquet    
    elit ac nunc vestibulum rutrum. Vestibulum blandit pellentesque erat, a 
    imperdiet sem. In egestas in sapien at pellentesque. Praesent non 
    commodo nunc. Integer porta malesuada placerat. Maecenas nec sem varius, 
    suscipit sem vitae, vulputate ligula. Nam sed ligula suscipit, faucibus 
    augue et, iaculis nibh. Cum sociis natoque penatibus et magnis dis 
    parturient montes, nascetur ridiculus mus.

        Nam at neque vel est elementum tincidunt. Nullam accumsan finibus 
    mauris, non auctor enim. Vestibulum ante ipsum primis in faucibus orci 
    luctus et ultrices posuere cubilia Curae; Ut at ligula eu turpis 
    volutpat aliquet et et quam. Aliquam est nulla, eleifend eu nibh a, 
    lobortis mollis ex. Class aptent taciti sociosqu ad litora torquent per 
    conubia nostra, per inceptos himenaeos. Sed cursus, dui eu finibus 
    ultricies, leo velit laoreet sapien, in pretium lectus ipsum quis 
    turpis. Ut ornare nulla eu facilisis condimentum. Etiam venenatis tellus 
    et lorem dapibus, et vestibulum mauris facilisis. Etiam quis feugiat 
    orci, sit amet blandit nisl.

        Phasellus feugiat auctor vehicula. Quisque congue enim leo, nec 
   sagittis sem tincidunt vitae. In in tellus lacus. Aenean porta ligula sed 
 est bibendum, sed tincidunt eros pellentesque. Suspendisse potenti. Lorem 
 ipsum dolor sit amet, consectetur adipiscing elit. Curabitur vitae lacus a 
 justo tempor semper nec eu nisl. In a odio feugiat, mattis urna eu, 
 efficitur risus. Aliquam laoreet a magna vitae convallis. Quisque vehicula 
 urna sit amet nisl faucibus facilisis. Quisque velit arcu, pretium sit amet 
 solli citudin quis, venenatis vitae lectus. Quisque aliquam scelerisque 
 metus, vitae hendrerit ipsum porta at. Ut nec dui non metus gravida 
 ultrices. Donec id arcu sit amet enim auctor iaculis nec a velit. Etiam 
 lobortis vulputate pharetra. Ut pellentesque pellentesque ligula non 
efficitur.

        In sit amet velit accumsan, cursus ipsum eget, fringilla magna. 
Proin quam eros, gravida ut interdum ut, commodo id odio. Donec sed nisl 
dolor. Aenean metus eros, hendrerit et purus vel, ultricies ultricies magna. 
Cras lobortis, ipsum ut aliquam hendrerit, erat nulla rhoncus enim, a 
 iaculis 
 elit ante sed sem. Praesent sit amet porttitor justo. Cras aliquam purus et 
mi hendrerit iaculis. Aliquam vestibulum felis urna, sit amet hendrerit leo  
suscipit pulvinar. Nullam tempus mattis diam. Nunc ut eros nec felis congue 
molestie. Donec bibendum condimentum risus, ut tristique nisl varius at. 
Maecenas gravida lectus ac facilisis pulvinar. Nullam diam purus,  
ullamcorper 
a nunc eget, cursus vehicula eros. Integer pharetra, eros sit amet blandit 
rhoncus, elit nisi congue dolor, ac faucibus odio sem id lectus. Fusce 
tempor, metus sit amet ultrices egestas, tortor ligula egestas est, a 
condimentum tellus velit nec augue. Aliquam arcu velit, sagittis nec risus 
in, eleifend iaculis dui.

        Nulla interdum gravida gravida. In vel facilisis ex. Etiam risus 
est, ornare eget bibendum a, convallis vel turpis. Nullam lacinia leo quam, 
vel malesuada libero faucibus vitae. In in velit interdum, hendrerit erat 
 sit 
amet, gravida nisl. Praesent a porta massa. Nunc sagittis purus tortor, ut 
elementum massa efficitur vel. Vestibulum hendrerit convallis lectus, vitae 
scelerisque dolor fermentum vel. Sed mauris ligula, facilisis vel neque vel, 
pretium fermentum diam. Aliquam ullamcorper dolor mauris, ac dictum ipsum 
consectetur at.

        Aliquam et posuere ligula, in scelerisque sem. Proin euismod finibus 
libero sagittis placerat. Morbi vehicula nulla enim, vel mollis metus 
tincidunt eu. Phasellus ipsum lorem, finibus eget mattis nec, suscipit vitae 
enim. Donec sed sagittis elit. Suspendisse id malesuada justo, et venenatis 
arcu. Nullam mauris est, iaculis eget imperdiet nec, feugiat quis lectus. Ut 
id nulla dui. Vivamus pretium metus fringilla mi tincidunt commodo.

        Proin id augue eu justo euismod vulputate a eget sapien. Nunc sit 
 amet tellus dapibus, vulputate ante fringilla, scelerisque neque. Etiam in 
 porttitor metus, quis lacinia diam. Maecenas vel sem purus. Nam id tortor 
 sit amet urna semper accumsan vitae quis purus. Integer nibh dui, maximus 
 vel tellus ac, pretium dictum tortor. Duis non dolor sit amet risus 
 sollicitudin convallis nec sit amet velit. Etiam porttitor sit amet libero 
 id tristique. Vivamus nec egestas neque. Sed lobortis consectetur dolor, 
 vitae gravida sapien. Mauris nec leo volutpat, tristique nisl vel, euismod 
 ante. Quisque aliquet urna elit, sit amet mattis mi iaculis ut. Donec risus 
 libero, ultricies vel erat quis, gravida egestas dui. Nam imperdiet arcu in 
 sollicitudin aliquam. Proin sit amet erat quis est porta pharetra.

        Nam tortor purus, aliquam id imperdiet ac, pulvinar ut ligula. 
  Pellentesque sollicitudin augue at dolor tristique elementum. Curabitur 
 posuere finibus nulla sit amet maximus. Donec lobortis justo eu sem 
 lobortis, quis convallis magna ultrices. Maecenas nunc ligula, tincidunt at 
 felis a, volutpat 
 scelerisque leo. Cras auctor velit nec orci rutrum commodo. Vestibulum 
bibendum elit nec quam ultricies facilisis. Maecenas mattis sem ut lorem 
luctus, eu 
 suscipit erat elementum. Sed posuere, orci nec pretium convallis, sem odio 
sodales metus, sit amet consectetur elit justo non mauris. Proin nec nibh  
 sit 
amet diam varius mattis rutrum a erat. In hac habitasse platea dictumst. 
Praesent ut porta nunc, a tincidunt lectus.

        Mauris leo purus, tincidunt sit amet urna et, vehicula rutrum nunc. 
  Suspendisse volutpat varius nisl in tincidunt. Maecenas ac convallis ex, 
 eu gravida libero. Vivamus elit tortor, pharetra vestibulum tincidunt vel, 
 tincidunt id nulla. Donec finibus eros sed felis sollicitudin condimentum 
 ut at orci. Nullam at risus tincidunt, viverra quam sed, eleifend mi. Donec 
 eu neque ac arcu porta euismod.

        Nullam vel pellentesque nisl. Class aptent taciti sociosqu ad litora 
  torquent per conubia nostra, per inceptos himenaeos. Sed malesuada dolor 
   quis tortor auctor pharetra. Aenean pretium sem rhoncus, pretium arcu 
  sed, sagittis leo. Aliquam tincidunt, est non condimentum maximus, purus 
  ex feugiat ante, vitae rhoncus mi orci sed orci. Curabitur fermentum urna 
  ut 
 dolor aliquam ornare. Vivamus tempus a massa ac tincidunt. Donec lacinia mi 
  ac odio commodo volutpat. Sed eu dolor tincidunt, convallis lectus at, 
  feugiat dolor. Donec vehicula dolor ut dictum volutpat.

    </div>
    <div id="footer">
        Test 2015. All rights reserved.
    </div>      
</body>

的CSS:

#logo {
    position:absolute;
    top:5px;
    left:15px; 
    width:150px;
    height:auto;
}
#sidebar {      
    width:200px;
    min-height:500px;
    height:auto;    
    background-color: #6699cc;
    padding:1px;
}
#user-logged {
    top:0px;
    right:0px;
    text-align: right;
    padding-top:50px;
    padding-right:10px;
    margin-left:200px;
    height:50px;
    min-width:200px;
}
.body-content {
    position:absolute; 
    top:126px;
    margin-left:202px;
    min-height:700px;
    background-color: #ccc;   
    width:80%;
    clear:both;
    height: auto !important;
}
#footer {
    position:absolute;
    padding-top:20px;
    width:100%;
    height:150px;
    font-size:12px;
    background-color: #cc9966;
    text-align:center;
    font-weight:bold;
    color:#fff;
}

2 个答案:

答案 0 :(得分:1)

问题是由于您绝对定位.body-content div的方式造成的。绝对定位的div有效地从文档流中移除,因此页脚不知道如何在内容div之后出现,而是向上移动到下一个逻辑位置。我在这里做了一些修改,让您了解如何使用浮动代替绝对定位。

修改包括浮动侧栏和.body-content,从clear: both移除.body-content,以及调整.body-content的宽度。您可能需要进一步调整,但这应该指向正确的方向。

(如果要求绝对定位,则可能需要采用不同的方法。)

#logo {
  position: absolute;
  top: 5px;
  left: 15px;
  width: 150px;
  height: auto;
}
#sidebar {
  width: 200px;
  min-height: 500px;
  height: auto;
  background-color: #6699cc;
  padding: 1px;
  float: left;
}
#user-logged {
  top: 0px;
  right: 0px;
  text-align: right;
  padding-top: 50px;
  padding-right: 10px;
  margin-left: 200px;
  height: 50px;
  min-width: 200px;
}
.body-content {
  float: left;
  min-height: 700px;
  background-color: #ccc;
  width: 65%;
  height: auto !important;
}
#footer {
  clear: both;
  padding-top: 20px;
  width: 100%;
  height: 150px;
  font-size: 12px;
  background-color: #cc9966;
  text-align: center;
  font-weight: bold;
  color: #fff;
}
<div id="user-logged">
  You are logged in as : <strong>User</strong>
  <br>Logout

</div>
<hr>



<div>
  <a id="logo" href=".">
    <img id="logo" src="images/logo.png" alt="BRS" />
  </a>
  <div id="sidebar">

    <h1 style="color:#fff; padding-left:20px; font-size:15px;">My 
    Reporting System</h1>


    <ul>
      <li>Outlet Settings</li>
      <li>Update Daily Stats</li>
      <li>Void Stats</li>
      <li>Email Report</li>
    </ul>
  </div>
</div>


<div class="body-content">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam pharetra eget lacus vitae elementum. Morbi a justo est. Aenean aliquet elit ac nunc vestibulum rutrum. Vestibulum blandit pellentesque erat, a imperdiet sem. In egestas in sapien at pellentesque.
  Praesent non commodo nunc. Integer porta malesuada placerat. Maecenas nec sem varius, suscipit sem vitae, vulputate ligula. Nam sed ligula suscipit, faucibus augue et, iaculis nibh. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur
  ridiculus mus. Nam at neque vel est elementum tincidunt. Nullam accumsan finibus mauris, non auctor enim. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Ut at ligula eu turpis volutpat aliquet et et quam. Aliquam
  est nulla, eleifend eu nibh a, lobortis mollis ex. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Sed cursus, dui eu finibus ultricies, leo velit laoreet sapien, in pretium lectus ipsum quis turpis. Ut ornare
  nulla eu facilisis condimentum. Etiam venenatis tellus et lorem dapibus, et vestibulum mauris facilisis. Etiam quis feugiat orci, sit amet blandit nisl. Phasellus feugiat auctor vehicula. Quisque congue enim leo, nec sagittis sem tincidunt vitae. In
  in tellus lacus. Aenean porta ligula sed est bibendum, sed tincidunt eros pellentesque. Suspendisse potenti. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur vitae lacus a justo tempor semper nec eu nisl. In a odio feugiat, mattis
  urna eu, efficitur risus. Aliquam laoreet a magna vitae convallis. Quisque vehicula urna sit amet nisl faucibus facilisis. Quisque velit arcu, pretium sit amet solli citudin quis, venenatis vitae lectus. Quisque aliquam scelerisque metus, vitae hendrerit
  ipsum porta at. Ut nec dui non metus gravida ultrices. Donec id arcu sit amet enim auctor iaculis nec a velit. Etiam lobortis vulputate pharetra. Ut pellentesque pellentesque ligula non efficitur. In sit amet velit accumsan, cursus ipsum eget, fringilla
  magna. Proin quam eros, gravida ut interdum ut, commodo id odio. Donec sed nisl dolor. Aenean metus eros, hendrerit et purus vel, ultricies ultricies magna. Cras lobortis, ipsum ut aliquam hendrerit, erat nulla rhoncus enim, a iaculis elit ante sed
  sem. Praesent sit amet porttitor justo. Cras aliquam purus et mi hendrerit iaculis. Aliquam vestibulum felis urna, sit amet hendrerit leo suscipit pulvinar. Nullam tempus mattis diam. Nunc ut eros nec felis congue molestie. Donec bibendum condimentum
  risus, ut tristique nisl varius at. Maecenas gravida lectus ac facilisis pulvinar. Nullam diam purus, ullamcorper a nunc eget, cursus vehicula eros. Integer pharetra, eros sit amet blandit rhoncus, elit nisi congue dolor, ac faucibus odio sem id lectus.
  Fusce tempor, metus sit amet ultrices egestas, tortor ligula egestas est, a condimentum tellus velit nec augue. Aliquam arcu velit, sagittis nec risus in, eleifend iaculis dui. Nulla interdum gravida gravida. In vel facilisis ex. Etiam risus est, ornare
  eget bibendum a, convallis vel turpis. Nullam lacinia leo quam, vel malesuada libero faucibus vitae. In in velit interdum, hendrerit erat sit amet, gravida nisl. Praesent a porta massa. Nunc sagittis purus tortor, ut elementum massa efficitur vel. Vestibulum
  hendrerit convallis lectus, vitae scelerisque dolor fermentum vel. Sed mauris ligula, facilisis vel neque vel, pretium fermentum diam. Aliquam ullamcorper dolor mauris, ac dictum ipsum consectetur at. Aliquam et posuere ligula, in scelerisque sem. Proin
  euismod finibus libero sagittis placerat. Morbi vehicula nulla enim, vel mollis metus tincidunt eu. Phasellus ipsum lorem, finibus eget mattis nec, suscipit vitae enim. Donec sed sagittis elit. Suspendisse id malesuada justo, et venenatis arcu. Nullam
  mauris est, iaculis eget imperdiet nec, feugiat quis lectus. Ut id nulla dui. Vivamus pretium metus fringilla mi tincidunt commodo. Proin id augue eu justo euismod vulputate a eget sapien. Nunc sit amet tellus dapibus, vulputate ante fringilla, scelerisque
  neque. Etiam in porttitor metus, quis lacinia diam. Maecenas vel sem purus. Nam id tortor sit amet urna semper accumsan vitae quis purus. Integer nibh dui, maximus vel tellus ac, pretium dictum tortor. Duis non dolor sit amet risus sollicitudin convallis
  nec sit amet velit. Etiam porttitor sit amet libero id tristique. Vivamus nec egestas neque. Sed lobortis consectetur dolor, vitae gravida sapien. Mauris nec leo volutpat, tristique nisl vel, euismod ante. Quisque aliquet urna elit, sit amet mattis
  mi iaculis ut. Donec risus libero, ultricies vel erat quis, gravida egestas dui. Nam imperdiet arcu in sollicitudin aliquam. Proin sit amet erat quis est porta pharetra. Nam tortor purus, aliquam id imperdiet ac, pulvinar ut ligula. Pellentesque sollicitudin
  augue at dolor tristique elementum. Curabitur posuere finibus nulla sit amet maximus. Donec lobortis justo eu sem lobortis, quis convallis magna ultrices. Maecenas nunc ligula, tincidunt at felis a, volutpat scelerisque leo. Cras auctor velit nec orci
  rutrum commodo. Vestibulum bibendum elit nec quam ultricies facilisis. Maecenas mattis sem ut lorem luctus, eu suscipit erat elementum. Sed posuere, orci nec pretium convallis, sem odio sodales metus, sit amet consectetur elit justo non mauris. Proin
  nec nibh sit amet diam varius mattis rutrum a erat. In hac habitasse platea dictumst. Praesent ut porta nunc, a tincidunt lectus. Mauris leo purus, tincidunt sit amet urna et, vehicula rutrum nunc. Suspendisse volutpat varius nisl in tincidunt. Maecenas
  ac convallis ex, eu gravida libero. Vivamus elit tortor, pharetra vestibulum tincidunt vel, tincidunt id nulla. Donec finibus eros sed felis sollicitudin condimentum ut at orci. Nullam at risus tincidunt, viverra quam sed, eleifend mi. Donec eu neque
  ac arcu porta euismod. Nullam vel pellentesque nisl. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Sed malesuada dolor quis tortor auctor pharetra. Aenean pretium sem rhoncus, pretium arcu sed, sagittis
  leo. Aliquam tincidunt, est non condimentum maximus, purus ex feugiat ante, vitae rhoncus mi orci sed orci. Curabitur fermentum urna ut dolor aliquam ornare. Vivamus tempus a massa ac tincidunt. Donec lacinia mi ac odio commodo volutpat. Sed eu dolor
  tincidunt, convallis lectus at, feugiat dolor. Donec vehicula dolor ut dictum volutpat.

</div>
<div id="footer">
  Test 2015. All rights reserved.
</div>

答案 1 :(得分:0)

溶液: 将侧边栏更改为位置:绝对 将身体内容改为位置:相对 从身体内容中移除前126px 感谢Cory先生。