2025年12月のブログと更新記録

2025年11月分より、ブログと更新履歴を納めていきます。

2025年12月のブログ

古いブログはこのようにして深い階層へ残していきます。

2025/12/13:グローバルナビゲーションを作るCSSのコード例

このサイトでは、リンクにカーソルを合わせたり特定のクラスが付いたときに、すっとアンダーラインが動いて出てくる仕掛けになってます。
グローバルナビとして本格的に動かすならJavaScriptを足すこともあるけど、このサイトでは専用のUIを作り込むんじゃなくて、ちょっとした演出で目を引く程度にしてるんだよね。─ でもまったくJavaScriptを使っていないわけではないよ? ─
あと、display: flex; を使うと要素の並びやサイズ調整がぐっと自由になるから、レイアウトを組むときには欠かせない存在って感じかな。

グローバルナビゲーションを構成するCSS事例


/* アンダーラインアニメーションのキーフレームを定義 */
@keyframes underline-animation {
 from {
  width: 0; /* 初期幅は0 */
  background: #00CC00; /* 初期背景色は緑 */
 }
 to {
  width: 100%; /* 最終幅は100% */
  background: #1A73E8; /* 最終背景色は青 */
 }
}

/* アニメーション対象のリンク要素の基本スタイル */
.animated-link {
 position: relative; /* 要素を相対位置に設定 */
 color: #1A73E8; /* リンクのテキスト色を青に設定 */
 text-decoration: none; /* テキストの下線を削除 */
}

/* アニメーション対象のリンク要素の擬似要素::afterを定義 */
.animated-link::after {
 content: ""; /* 擬似要素の内容を空に設定 */
 position: absolute; /* 要素を絶対位置に設定 */
 left: 0; /* 擬似要素の左端を親要素に揃える */
 bottom: -2px; /* 擬似要素の下端を親要素から少し下げる */
 width: 0; /* 初期幅を0に設定 */
 height: 2px; /* 高さを2pxに設定 */
 background: #00CC00; /* 初期背景色を緑に設定 */
 transition: width 0.5s; /* 幅の変化を0.5秒でアニメーション */
}

/* "loaded" クラスが追加されたリンク要素の擬似要素::afterを定義 */
.animated-link.loaded::after {
 width: 100%; /* 幅を100%に設定 */
 background: #1A73E8; /* 背景色を青に変更 */
 animation: underline-animation 2s forwards; /* アンダーラインアニメーションを2秒間かけて実行 */
}

/* ナビゲーションバーのスタイル */
.den_nav {
 background: linear-gradient(to bottom, rgba(173, 216, 230, 0.5), rgba(173, 216, 230, 0)); /* 背景をグラデーションに設定 */
 color: #1A73E8; /* テキスト色を青に設定 */
 padding: 10px; /* 内側の余白を10pxに設定 */
 border-radius: 20px; /* 角を丸くする */
}

/* ホームアイコンのスタイル */
.feinhome {
 width: 50px; /* 幅を50pxに設定 */
 margin-left: 3px; /* 左マージンを3pxに設定 */
 margin-top: 3px; /* 上マージンを3pxに設定 */
 display: block; /* ブロック要素として表示 */
 position: relative; /* 相対位置に設定 */
 top: 3px; /* 上から3pxに位置 */
 left: 3px; /* 左から3pxに位置 */
}

/* ナビゲーションメニューのスタイル */
.den_nav ul {
 list-style-type: none; /* リストのデフォルトの箇条書きを削除 */
 margin: 0; /* 外側の余白をなしに設定 */
 padding: 0; /* 内側の余白をなしに設定 */
 display: flex; /* 子要素を横並びに表示 */
 flex-wrap: wrap; /* 子要素を折り返す */
}

/* リスト項目のスタイル */
.den_nav ul li {
 margin-right: 20px; /* 右マージンを20pxに設定 */
 margin-bottom: 10px; /* 下マージンを10pxに設定 */
}

/* リスト内のリンクのスタイル */
.den_nav ul li a {
 color: #1A73E8; /* リンクのテキスト色を青に設定 */
}

/* リンクにホバーしたときのスタイル */
.den_nav ul li a:hover {
 color: #0078D4; /* リンクのテキスト色を濃い青に変更 */
}

具体例となる、単純なコードを書いてみますね。
いろんな書き方があると思います。

CSSのフレックスボックスレイアウト例


<div class="container">
  <div class="item">Item 1</div>
  <div class="item">Item 2</div>
  <div class="item">Item 3</div>
</div>

フレックスボックスって一度使い始めると、レイアウトの組み立てがすごく楽になるんだよね。
ちょっとしたコードを書くだけで、要素の並びがきれいに整うから、まずはそれで土台を作っちゃうの。
そこから先は、自分の好みに合わせて色を足したり影をつけたり、余白を調整したりして、雰囲気を仕上げていく感じ。
骨組みがしっかりしてると、装飾を加えるのも自由度が高くて、遊び心を出しやすいんだよ。
だから最初にフレックスで形を整えておくと、後の作業がぐっと楽になるってわけ。

CSSのフレックスボックスレイアウト例


.container {
  display: flex; /* フレックスコンテナを設定 */
  justify-content: center; /* 子要素を中央揃え */
  align-items: center; /* 子要素を上下中央揃え */
}

.item {
  flex: 1; /* 子要素が均等にスペースを取る */
}

CSSをちゃんと使うと、見た目の調整がグーンと楽になるんだよね。
HTMLだけだと文字や画像をただ並べるだけになっちゃうけど、スタイルをかければ色や余白、フォントの雰囲気まで自由に変えられるから、サイト全体が整って見える。
しかも一度ルールを決めておけば、同じデザインをいろんなページで簡単に再利用できるから効率もいいし、後から修正するときもまとめて直せるのが助かる。
つまり、CSSはただ飾りじゃなくて、作業をスムーズにしてくれるコードって感じかな。

👉ファンサイト制作のアトリエへ戻る

2025/12/9:グローバルナビゲーションを作るJavaScriptのコード例

サイトの導線って、ちょっとした工夫でぐっと使いやすくなるんだよね。
まず目に入るのは一番上のグローバルナビで、ここがしっかりしてると全体の安心感が違うんだよ。

フェードアウト効果の草花写真

このサイトの場合、グローバルナビゲーションからパンくずリストにつながって、今どこにいるのかがすぐ分かるから迷子になりにくい。
その下にはハンバーガーメニューが控えていて、必要なときにパッと展開できるから、情報が詰まってても窮屈に感じないようにしてあります。
ページトップの画像を過ぎると、アコーディオン式の見出しが待っていて、気になる部分だけ開いて読めるから、流れを自分で調整できる。
ページの最後にはサイトマップがあって、見出しからジャンプできる仕組みになってるから、下までスクロールした人にもちゃんと出口が用意されてる感じ。
しかもスクロールしていくと自然にトップへ戻るボタンが現れるから、行き止まりにぶつかることなく上下の動きがスムーズに続いていく。

フェードアウト効果の草花写真

全体を左右の移動でページ間を渡り歩き、上下の動きで読み進めるっていうイメージにすると、どこにも閉塞感がなくて、流れるように操作できる。
しかもグローバルナビに仕込んだちょっとしたアニメーションが、視線を引き寄せてリンクの文字を際立たせてくれるから、ただのメニューじゃなくて「ここから進めるよ」っていうサインになってる。
小さな演出なのに、サイト全体の印象をふわっと華やかにしてくれるんだよね。

グローバルナビゲーションを目立たせるJavaScriptの例


document.addEventListener("DOMContentLoaded", function () {
 const links = document.querySelectorAll(".animated-link");
 links.forEach(link => {
  link.classList.add("loaded");
 });
});
    
フェードアウト効果の草花写真

これはですねー…
ページが読み込み終わったタイミングで「.animated-link」っていうクラスを持ってるリンクを全部拾ってきてる。
で、そのひとつひとつに「loaded」っていう新しいクラスを足してるんだよ。
つまり、最初はただのリンクなんだけど、読み込みが完了した瞬間に「よし、準備できた!」って合図を送って、見た目や動きを変えるきっかけを作ってる。

フェードアウト効果の草花写真

たとえばCSS側で「.animated-link.loaded」って指定しておけば、ふわっと色が変わったり、ちょっとしたアニメーションが走ったりするわけ。
だからこのスクリプトは、リンクをただ置いておくだけじゃなくて、ページが立ち上がった瞬間に「演出スタート!」っていうスイッチを押してるような役割をしています。
見てる人にとっては、自然に目が引かれる仕掛けになってるんだよね。

👉ファンサイト制作のアトリエへ戻る

2025年12月の更新記録

古い更新記録はこのようにして深い階層へ残していきます。


サイトマップ

全ページをリスト化したサイトマップも用意していますが、けっこうなページ数があります。
下記の「カテゴリー分けサイトマップ」のほうが使いやすいでしょう。

アナザーエデン関連ページ・サイトマップ
アナザーエデンの強敵戦やストーリーコンテンツのリスト、お勧めバッジなどを掲載したコーナーです。
期間限定のない普通のRPGですので、初心者でも安心して続けていけるゲームとなっています。
もっとも重要なグラスタについては、場所別に網羅した表があります。

個人サイトのホスティングとコンテンツ作成
個人でウェブサイトを作るなら時間をかけて。
HTML・CSS・JavaScriptの書き方はもちろん、無料かつ広告なしでホームページを作る方法を掲載したコーナーです。
Webデザインやレイアウトについても書いてあります。

魚釣りなどアウトドアのエリア
ゲームとパソコンだけじゃなく、アウトドアも趣味なんです。
このコーナーでは魚釣りの記録とか、魚料理のレシピ、はたまたサイクリングなどなど。
アウトドアに関連するコンテンツが詰め込まれています。