CSSでヘッダーを固定にしたサンプル
- Category :
- CSS リファレンス
…ここからが続き
CSSでヘッダーを固定にしたサンプルの解説
今回固定する部分はココになります。

XHTML
<div id="header"> <h1><a href="/" title="CSSに関する事を中心にWebサイト制作に関する情報を掲載しているCSS Lecture"><img src="/common/images/logo_top.png" alt="CSS Lecture" width="178" /></a></h1> <!--/ #header--></div>
htmlは普通の記述で大丈夫です。
CSS
* html body {
background: url(null) fixed;
}
IE6にposition:fixedが効くようにbody要素上記ソースを記述しておきます。
/* header要素
----------------------------------------------------------- */
div#header {
width: 100%;
padding: 20px;
background: #000 url(../images/bg/header.gif) repeat-x;
border-bottom: 1px solid #CCC;
color: #FFF;
position: fixed;
top:0;
left:0;
}
* html div#header {
position: absolute;
top: expression(eval(document.documentElement.scrollTop+0));
}
div#header h1 {
width: 800px;
margin: 0 auto;
}
* html div#headerに記述してある部分がIE6対応部分ですね。
これに付いてはCSS : positionの「absolute」「relative」「fixed」のリファレンスで説明していますので、そちらをご覧下さい。
残りの部分に関しては、普通にCSSでレイアウトをしているだけです。





Comments
山下MOSOさん。
その現象自分も後日気が付きいろいろ試してみたんですが、解決策が見つからず諦めてしまいました…
力になれずにすみません。。。
はじめまして。
いつも参考にさせていただいる初心者です。
今回、このヘッダーを固定するCSSを使ってみているのですが、メインにYoutubeの動画とかGoogleの広告バナーが入った状態でスクロールすると、動画やバナーがヘッダーよりも上にかぶさってスクロールされてしまいます。
何か解決する方法はありますか?
bzbellさんこんばんわです^^
XML宣言を省いた(標準モード)時のみ有効になりますね。
XHTML 1.0 Transitional以外の事はまだ勉強段階です…
すみません;
こんばんわ^^
このテクはXML宣言を省いた(標準モード)時のみ有効・・・という理解で正しいですか ( ̄∇ ̄)!?