固定配置ヘッダー(フワッと表示) デザイン見本
スクロールで最初のヘッダーが隠れたタイミングでフワッと現れる固定ヘッダーの実装デモ。JavaScript と CSS の連携で滑らかなアニメーションを実現。コピーしてすぐ使えるコードを掲載しています。
固定配置ヘッダー(フワッと表示) — 実装デモ
ロゴ
Menu 1
Menu 2
Menu 3
ロゴ
Menu 1
Menu 2
Menu 3
コンテンツエリア
↓↓↓
スクロールすると追従ヘッダーがフワッと現れます
↓↓↓
スクロールすると追従ヘッダーがフワッと現れます
↓↓↓
スクロールすると追従ヘッダーがフワッと現れます
↓↓↓
スクロールすると追従ヘッダーがフワッと現れます
HTML
<header id="main-header">
<div class="logo">ロゴ</div>
<nav>...</nav>
</header>
<header id="fixed-header">
<div class="logo">ロゴ</div>
<nav>...</nav>
</header>
<main>
<!-- ページコンテンツ -->
</main>
CSS
#main-header,
#fixed-header {
width: 100%;
height: 60px;
background: #1e293b;
color: #fff;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 20px;
box-sizing: border-box;
}
nav ul {
display: flex;
gap: 16px;
list-style: none;
padding: 0;
margin: 0;
}
nav a {
color: rgba(255, 255, 255, 0.9);
text-decoration: none;
font-size: 0.8rem;
}
#fixed-header {
position: fixed;
top: 0;
left: 0;
z-index: 1000;
transform: translateY(-100%);
opacity: 0;
transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
JS
document.addEventListener('DOMContentLoaded', function() {
var mainHeader = document.getElementById('main-header');
var fixedHeader = document.getElementById('fixed-header');
var lastScrollTop = 0;
window.addEventListener('scroll', function() {
var scrollTop = window.scrollY || document.documentElement.scrollTop;
if (scrollTop > lastScrollTop) {
if (scrollTop > mainHeader.clientHeight) {
fixedHeader.style.transform = 'translateY(0)';
fixedHeader.style.opacity = '1';
}
} else {
if (scrollTop <= mainHeader.clientHeight) {
fixedHeader.style.transform = 'translateY(-100%)';
fixedHeader.style.opacity = '0';
}
}
lastScrollTop = scrollTop;
});
});
CSS — transform + opacity + transition
追従ヘッダーの初期状態は transform: translateY(-100%) で上方向に隠し、opacity: 0 で透明にします。transition を指定しておくことで、状態が変わる際に 0.3 秒かけてスムーズに遷移(フワッと)します。
JavaScript — scroll イベントの判定ロジック
scroll イベントで現在のスクロール量(scrollTop)を取得し、前回の値(lastScrollTop)と比較してスクロール方向を判定します。下スクロールかつ最初のヘッダーを越えたとき → 追従ヘッダーを表示。上スクロールして先頭付近に戻ったとき → 追従ヘッダーを非表示。最後に lastScrollTop を更新して次回の比較に備えます。
当サイトで公開しているWebデザインやUIの実装例は、一覧として以下記事に纏めています。
あわせて読みたい


Webデザイン・UIコンポーネント集(HTML/CSS/JS)
Webサイトやアプリで使われている『Webデザイン』や『UI』の実装例やデザイン例を纏めました。(随時更新中)実装方法などは別記事にコードや実装ポイントを公開してい...
