Affixプラグインを使用すると、要素がページ上の領域に固定(ロック)されます。これは、ページを上下にスクロールしながら特定の領域にスティックさせるためにナビゲーションメニューやソーシャルアイコンボタンでよく使用されます。
プラグインはスクロール位置に応じて、この動作のオン/オフを切り替えます(CSS位置の値を
static
から
fixed
に変更します)。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<title>Bootstrapチュートリアル -アフィックス-</title>
<style>
.affix {
top: 0;
width: 100%;
}
.affix + .container-fluid {
padding-top: 70px;
}
</style>
</head>
<body>
<div class="container-fluid" style="background-color:#F44336;color:#fff;height:200px;">
<h1>Bootstrapチュートリアル</h1>
<h3>固定ナビバーサンプル</h3>
<p>スクロールしてもナビバーは画面上に固定されます。</p>
</div>
<nav class="navbar navbar-inverse" data-spy="affix" data-offset-top="197">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Bootstrapチュートリアル</a></li>
<li><a href="#">ページ 1</a></li>
<li><a href="#">ページ 2</a></li>
<li><a href="#">ページ 3</a></li>
</ul>
</nav>
<div class="container-fluid" style="height:1000px">
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
</div>
</body>
</html>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<title>Bootstrapチュートリアル -アフィックス-</title>
<style>
.affix {
top: 20px;
}
</style>
</head>
<body>
<div class="container-fluid" style="background-color:#2196F3;color:#fff;height:200px;">
<h1>Bootstrapチュートリアル</h1>
<h3>固定サイドバーサンプル</h3>
<p>スクロールしてもサイドバーは画面左に固定されます。</p>
</div>
<br>
<div class="container">
<div class="row">
<nav class="col-sm-3">
<ul class="nav nav-pills nav-stacked" data-spy="affix" data-offset-top="205">
<li class="active"><a href="#section1">セクション 1</a></li>
<li><a href="#section2">セクション 2</a></li>
<li><a href="#section3">セクション 3</a></li>
</ul>
</nav>
<div class="col-sm-9">
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
<h1>サンプルテキスト</h1>
</div>
</div>
</div>
</body>
</html>