1

ページの最後のdivの直後にフッターを表示しようとしていますが、フッターが希望よりも低くなっている理由がわかりません。誰か助けてもらえますか?コードは次のとおりです。

<div id="container">
    <div id="header">
        <h1>
            <!--<a href="#"><img src="tracylogo7.jpg" alt="Millington and Hope" /></a> -->
            <a href="#"><img src="tracylogo6header.jpg" alt="Millington and Hope" /></a>
        </h1>
        <h2>
            <!--<a href="#"><img src="tracylogo5_header.jpg" alt="Millington and Hope" /></a> -->
        </h2>   
    </div>
    <ul id="nav">
        <li><a href="index.html">Home</a></li><!--
        --><li><a href="stock.html">Stock</a></li><!--
        --><li><a href="events.html">Events</a></li><!--
        --><li><a href="contact.html">Contact</a></li>
    </ul>
    <div id="box">
            <a href="#"><img src="home4.jpg" alt="Slideshow Image 1" /></a>

            <a href="#"><img src="home6.jpg" alt="Slideshow Image 2" /></a>

            <a href="#"><img src="home4.jpg" alt="Slideshow Image 3" /></a>
    </div>
    <div id="box2">
        <a href="#"><img src="tracylogosmall.jpg" alt="Logo" /></a>
    </div>
    <div id="footer">
        <p class="client">Tel: 0785740&nbsp;&nbsp;&nbsp;&nbsp;E-mail: tjdelape@hotmail.co.uk</p>

    </div>
</div>
html,body
{
  height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
}

body
{
    background:rgb(171,163,144);
    text-align: center;
    min-width: 600px;
}

#container
{
    margin:0 auto;
    background:rgb(171, 163, 144);
    width:80%;
}   

#nav
{
  border:1px solid #ccc;
  border-width:1px 0;
  list-style:none;
  margin:0;
  padding:0;
  text-align:center; 
  /*background:rgb(161,153,134) /* for non-css3 browsers */
   background: -webkit-radial-gradient(circle, rgb(151,143,124),rgb(171, 163, 144));
   background: -moz-radial-gradient(circle, rgb(151,143,124),rgb(171, 163, 144));

}

#nav li
{
    display:inline;
}       

#nav a
{
    display:inline-block;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding:10px 20px 10px 20px;
    text-decoration:none;
    color:white;
}


#nav a:hover
{
    background:rgb(171, 163, 144);
}   


#header
{
    padding: 0px;
    color: white;
    width:100%;
    text-align:center;
}



#header h1 
{ 
    margin: 0;   
}

#stock
{
    position:relative;
    margin:0 auto;
    margin-top:35px;
    width: 1000px;
    border-collapse:collapse;
}

#stock th
{
    height: 30px;
    background:rgb(151,143,124);
}       
table, td, th
{
    color:white;
    border: solid 1px black;
    padding: 2px;
}

#events
{
    position:relative;
    margin:0 auto;
    margin-top:35px;
    width: 1000px;
    border-collapse:collapse;
}

#events th
{
    height: 30px;
    background:rgb(151,143,124);
}

#footer {
   position:fixed;
   left:0px;
   bottom:0px;
   height:25px;
   width:100%;
   background:rgb(151,143,124);
   border-top:solid 1px white;
}

.client
{
    color:white;
    margin:3px auto;
    text-indent:1cm;
    text-align:left;
}   

#sold
{
    color: red;
}

#box
{
    position:relative;
    margin:0 auto;
    width:100%;
    height:200px;
    margin-top:100px;
}
#box img
{
    margin:0 auto;
    border:solid 1px white;
    margin: 10px;
}

#box2
{
    position:relative;
    margin-top:200px;
    width: 100%;
}

#box2 img
{
    margin:0 auto;
    opacity:0.5;
    filter:alpha(opacity=50);

}       



h3
{
    color:white;
    text-decoration:underline;
}       



#container2 {
    clear:left;
    float:left;
    width:100%;
    overflow:hidden;
    background:rgb(171,163,144); /* column 2 background colour */
}
#container1 {
    float:left;
    width:100%;
    position:relative;
    right:50%;
    background:rgb(171,163,144); /* column 1 background colour */
}
#left {
    float:left;
    width:46%;
    position:relative;
    left:52%;
    text-align:left;
    overflow:hidden;
}
#right{
    float:left;
    text-align:left;
    width:46%;
    position:relative;
    left:56%;
    overflow:hidden;
}   

p
{
    color:white;
}

フッターは、最後のdivの後に大きなマージンがあるように見えますが、これが私が宣言したものだとは思いませんか?

4

4 に答える 4

2

フッターは画面の下部に固定されています(位置:固定;下部:0)。この宣言を削除してフッターを#container divの外側に配置すると、目的の効果が得られます。

于 2012-07-25T12:33:34.677 に答える
1

それはあなたが宣言したことです。これにより、div がページの下部に強制されます。

#footer {
   position:fixed;
   left:0px;
   bottom:0px;
   height:25px;
   width:100%;
   background:rgb(151,143,124);
   border-top:solid 1px white;
}

必要に応じて上部マージンを調整できますが、このようなことを行って、下部 div の直後に表示されるようにします。

#footer {
   position:relative;
   left:0px;
   height:25px;
   width:100%;
   background:rgb(151,143,124);
   border-top:solid 1px white;
}
于 2012-07-25T12:29:36.380 に答える
0

padding-bottom: 100px;に(または同様の値)を追加して#container、次のようにすることができます。

#container {
  margin: 0 auto;
  background: #ABA390;
  width: 80%;
  padding-bottom: 100px;
}
于 2012-07-25T12:33:03.287 に答える
0

これを試してみてください。それぞれ上部と下部にくっついているヘッダーとフッターの完璧なコードです。

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>Header & Footer</title>
        <style type="text/css">
            /* Global */
            * {
                margin: 0;
            }
            html, body {
                height: 99%;
            }
            /* Header */
            .container{
                min-height: 100%;
                height: auto !important;
                height: 100%;
                margin: 0 auto -4em;
                width:100%;
                font-family:Segoe UI;
                color:#fff;
            }
            .container-header{
                padding-top:5px;
                padding-left:20px;
            }

            /* Footer */
            .footer{
                background-color:#333030;
                width:100%;
                font-family:Segoe UI;
                color:#fff;
            }
            .footer img{
                padding-left:15px;
            }
            /* Page Content */
            .content{
                height: auto !important;
            }
            .container p{
            font-size:12pt;
            font-weight:bold;
            }
        </style>
    </head>
    <body>
        <!-- Header Div -->
        <div class="container">
            <table width="100%" style="background-color:#333030;color:#FFFFFF;padding:10px">
                <tr></tr>
                <tr>
                    <td></td>
                    <td>
                        <div style="padding-left:100px;font-size:36px;">Header</div>
                    </td>
                </tr>
                <tr></tr>
            </table>

            <!-- Page Content Div -->
            <div class="content">
                Blah Blah
            </div>
        </div>

        <!-- Footer Div -->
        <div class="footer">
            <table width="100%" style="background-color:#333030;color:#FFFFFF;padding:10px">
                <tr></tr>
                <tr>
                    <td></td>
                    <td>
                        <div style="padding-left:100px;font-size:36px;">Footer</div>
                    </td>
                </tr>
                <tr></tr>
            </table>
        </div>
    </body>
</html>

乾杯!!!

于 2012-07-25T14:12:18.030 に答える