ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
サイドバー固定広告の HTML 構造
Bootstrap 5 のグリッドを使い、3 カラム構成(左広告・メイン・右広告)で組みます。
<div class="container-fluid">
<div class="row">
<!-- 左サイドの広告 -->
<div class="col-lg-2 col-md-3 d-none d-md-block">
<div class="ad-left">
<!-- ここに左側の広告コード -->
</div>
</div>
<!-- メインコンテンツ -->
<div class="col-lg-8 col-md-6">
<div class="main-content">
<!-- ここに Web サイトのメインコンテンツ -->
</div>
</div>
<!-- 右サイドの広告 -->
<div class="col-lg-2 col-md-3 d-none d-md-block">
<div class="ad-right">
<!-- ここに右側の広告コード -->
</div>
</div>
</div>
</div>
CSS で広告を固定表示
.ad-left, .ad-right {
position: fixed; /* 広告を固定 */
padding-top: 10px;
padding-bottom: 10px;
top: 50%; /* 画面の縦中央 */
transform: translateY(-50%);/* 自分自身の半分上にずらす */
width: 160px; /* 標準的なバナー幅 */
}
.ad-left { left: 0; }
.ad-right { right: 0; }
.main-content {
padding: 20px;
}
クラス指定の意味
| クラス | 意味 |
|---|---|
col-lg-2 | ≥992px で 2 カラム幅(12 列中 2 列) |
col-md-3 | ≥768px で 3 カラム幅 |
d-none | すべてのサイズで非表示(初期) |
d-md-block | ≥768px で display:block に戻す |
結果として、スマホでは広告非表示・タブレット以上で表示になります。
レスポンシブ動作のおさらい
| 画面幅 | 左広告 | メイン | 右広告 |
|---|---|---|---|
| < 768px (sm) | 非表示 | 全幅 | 非表示 |
| 768〜991px (md) | 3/12 col | 6/12 col | 3/12 col |
| ≥ 992px (lg) | 2/12 col 固定 | 8/12 col | 2/12 col 固定 |
スクロール追従にしたい場合
ページが長くて広告を常に追従表示したいなら position:sticky も選択肢になります。
.ad-left, .ad-right {
position: sticky;
top: 80px; /* ヘッダーの高さ分下げる */
align-self: flex-start;
}
position:sticky は親要素の高さ内でのみ追従するため、Flex/Grid の子要素として配置するのがコツです。
注意点と Tips
- 横スクロール禁止: 広告幅が
col-lg-2を超えるとレイアウト崩れの原因。広告枠は固定幅 (160 / 200px 程度) を推奨 - z-index: メインコンテンツのモーダル等と重なる場合は
z-index調整 - AdSense ポリシー: Google AdSense は
position:fixedでの固定表示を禁止しているため、AdSense 利用なら sticky か通常配置に - Cumulative Layout Shift (CLS): 広告の高さを
min-heightで確保し、表示時のレイアウト揺れを防ぐ
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 Spring Frameworkのアノテーション一覧
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- PHPでのファイルアップロード方法|multipart/form-dataと$_FILES 2026-08-07 17:15:57
- PHP $_SERVERとは|DOCUMENT_ROOT・PHP_SELFなど主な要素 2026-08-07 17:15:57
- Scratchのアカウントの作り方|メールアドレスとユーザー名の登録手順 2026-08-07 17:15:57
- djangoにおけるMVCアプリケーション実装例 2026-08-07 17:15:57
- Bluetoothとは|仕組み・BLEとClassicの違い・用途 2026-08-07 17:15:57
- Spring Bootのテスト入門|@SpringBootTestとJUnitでの単体・結合テスト 2026-08-07 17:15:57
- Java とは?言語仕様・JVM・主要フレームワーク一覧 2026-08-07 17:15:56
- インストール方法(Windows版) 2026-08-07 17:15:56
- APIキー取得方法 2026-08-07 17:15:56
- 【PHPフレームワーク】Laravelの使い方 2026-08-07 17:15:56
- Scratch 作品の公開方法 2026-08-07 17:15:56
- Google OAuth 2.0 認証の実装方法 2026-08-07 17:15:56
- データベースとは?RDB / NoSQL / SQL の基礎 2026-08-07 17:15:56
- インストール(eclipseプラグイン) 2026-08-07 17:15:56
- Spring Frameworkの使い方 2026-08-07 17:15:56
コメントを削除してもよろしいでしょうか?