0

私はこのひどいレイアウトを長い間機能させようとしてきましたが、非常にイライラしています。私は CSS を初めて使用するので、簡単に説明してください。しかし、スティッキー フッターやストレッチ コンテンツなどに関する多くの記事を調べましたが、まだ機能しません。最小高さは私には何もしません!

ページを埋めるのに十分なコンテンツがない場合に、サイトをどのように表示するかを次に示します。

そして、これは、コンテンツがスクロールするときにどのように見えるかです.

htmlコードは次のとおりです。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Welcome to SilmanServer!</title>
<link href="./main.css" rel="stylesheet" type="text/css" />

</head>

<body>

<div id="pageHeader"> 
<h1>SilmanServer</h1>
<p>Aaron Silman's Personal Home Server </p>
</div>

<div id="navigation">
    <ul>
        <li><a href="./index.html">Home</a></li>
        <li><a href="./blog.html">Blog</a></li>
        <li><a href="./projects.html">Projects</a></li>
        <li><a href="./about.html">About Me</a></li>
        <li><a href="./contact.html">Contact</a></li>
    </ul>
</div>


<div id="main">

<div>
<h2>What the hell?</h2>
    <p>
    This the project I embarked on around June of 2012 with an old computer that I had at home. My goal: To transform that old, useless HP Pavilion a6750y into a fully functioning webserver for this website! Along the way I also learned (X)HTML, CSS, Javascript, PHP, MySQL and a bunch of other things needed for designing and developing websites, as well as administrating my own server.
    </p>
</div>

<div>
<h2> Why? </h2>
    <p> As mentioned before, I really wanted to learn how to build websites that function both on the client side and server side. I wanted to just play around and learn. So I started learning, beginning with the basics. I will also use this website as documentation, tracking my progress and noting a lot of important steps so if anyone (including myself - in case I forget) wants a guide to setting up a server and learning web design and development they an refer to <a href="./guide_to_the_web.html">this page </a> for a complete, idiot-proof, guide to the web from scratch.
    </p>
</div>

</div>

<div id="pageFooter">
    <p> This is a footer
    </p>
</div>

</div>
</body>
</html>

CSSは次のとおりです。

/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}

/* Global Styles */

html{
    background: url(./images/sway.jpg);
    background-attachment: fixed;
    background-repeat::no-repeat;
}

body {
    width: 80%;
    margin: 0 auto; 
}
/* pageHeader Styles */

#pageHeader{
    height: 100px;
    background:#999;
}

#pageHeader h1 {
    padding-left: 30px;
    font-family:Arial, Helvetica, sans-serif;
    font-size: 3.5em;
    color:#F93;
}

#pageHeader p{
    padding-left: 40px;
    font-family: "Times New Roman", Times, serif;
    font-size: 2em;
    color: white;
}

/* navigation Styles */

#navigation{
    float:left;
    width:100%;
    background: #0CF;
    overflow: hidden;
    position: relative;
}

#navigation ul{

}

#navigation li{
    float: left;
    margin: 0 20px;
    font-size: 1.5em;
}

#navigation li a:link {color:#F60;}    /* unvisited link */
#navigation li a:visited {color:##89ABFC;} /* visited link */
#navigation li a:hover {color:#3FF;}   /* mouse over link */
#navigation li a:active {color:#009;}  /* selected link */

/* main Styles */

#main{
    width: 80%;
    margin: 0 auto;
    border: 2px solid black;
    background: #999;
    color: #FFF;
}

/* pageFooter Styles */

#pageFooter{
    height: 100px;
    background:#999;
}

#pageFooter h1 {
    padding-left: 30px;
    font-family:Arial, Helvetica, sans-serif;
    font-size: 3.5em;
    color:#F93;
}

#pageFooter p{
    font-family: "Times New Roman", Times, serif;
    font-size: 2em;
    color: white;
}

この効果を得るにはどうすればよいですか?

4

2 に答える 2

8

あなたが探しているのは「スティッキーフッター」です。

  • これを行う古い CSS のみの方法では、フッターの正確な高さを知っている必要があります。簡単な Google 検索で見つけた最良の解決策は、Ryan Fait の Sticky Footerです。Ryan のチュートリアルは、ラッパー要素 (フッター以外のコンテンツを含む) の高さを 100% にすることで機能します。この 100% の高さにより、コンテンツはフッターをウィンドウの下部に押し込み、フッターは負のマージンを使用して表示領域に戻ります (これが、フッターの高さを知る必要がある理由です...負のマージンはフッター要素と同じ高さでなければなりません)。すべてのブラウザーで確実に動作するようにするための追加の要素がいくつかありますが ( <div class="push"></div>.

  • 新しい CSS のみのソリューションではdisplay: table;(IE7 ではサポートされていません) を使用する必要がありますが、可変高さのフッターを使用できます (スティッキー CSS フッター: 柔軟な方法を参照)。これはおそらく私が推奨する方法です。

2 番目の記事の著者は、Javascript を使用して IE7 のサポートを追加できると述べていますが、実際の Javascript を記述するまでには至っていません。この回答の時点で、StatCounterは IE7 の市場浸透率が約 1.28% であるとリストしています。IE7 のサポートが重要かどうかの判断はあなたに任せますが、可能であれば $0.02 を追加したいと思います:-p まず、IE7 のすべてのユーザーには IE8 へのアップグレード パスがあり、更新を拒否するユーザーはWeb開発者の生活をより困難にするだけです(IE7からIE8は、多くの重要なCSS2セレクターの可能性を開き、多くのしつこいフロートの問題を修正し、display: table;可能)。Web 開発者の生活を困難にするだけでなく、コンピューターを危険にさらす多数のブラウザー ハッキングにさらされているため、ゾンビ軍団を拡大しようとするハッカーにとって簡単な標的になっています (これにより、他のすべての人にとってセキュリティがより困難になります) 。 . 第二に、ウェブサイトはすべてのブラウザでまったく同じように見える必要がありますか? (そしてもちろん、答えは「いいえ」です) ブラウザー ウィンドウの下部にフッターを配置することが段階的な機能強化と見なされる限り、心配する必要はありません。

そうは言っても…IE7で動作するようにコードを更新しました:-p jsfiddleを見て、それがどのように機能するか教えてください。

于 2012-08-25T06:52:44.577 に答える
-1

Css の位置を使用: 固定

詳細については、このリンクを参照してください。 http://www.w3schools.com/cssref/pr_class_position.asp

于 2012-08-25T06:34:23.343 に答える