Bootstrap - ヒーロー デモ

ヒーローセクションとは?

こんにちは、ウェブ開発者の卵たち!今日は、Bootstrapの素晴らしい世界に飛び込み、魅力的なヒーローセクションを作成します。まず最初に、 burning questionに答えましょう:ヒーローセクションとは一体何でしょうか?

Bootstrap - Heroes Demo

ヒーローセクション、私の亲爱的な学生们、それはあなたのウェブサイトの表紙のようなものです。訪問者があなたのページに到着した際に最初に見るものです。これが、素晴らしい第一印象を与えるチャンスです。あなたのウェブサイトのスーパーヒーローのように、訪問者の注意を引き、恐ろしいバックボタンから救う存在と考えてください!

ヒーローセクションの主要要素

要素 説明
ヘッドライン キャッチーで強調されたステートメント
サブヘッドライン ヘッドラインを補足する支持文章
キャンペーン ユーザーが操作を促すボタンやリンク
バックグラウンド画像 見栄えが良く、関連性のある画像またはビデオ
オーバーレイ テキストの可読性を向上させる半透明な層

これから何を構築するかを理解したので、袖をまくってコードを書き始めましょう!

Bootstrap環境の設定

私たちの英雄的な傑作を創る前に、ステージを整えます。まず基本的なHTML構造を作成し、Bootstrapをインクルードします:

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>私の素晴らしいヒーローセクション</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<!-- 我々のヒーローセクションはここに配置されます -->

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>

このコードは、私たちのHTMLドキュメントを設定し、BootstrapのCSSとJavaScriptファイルをインクルードします。それは、私たちの英雄的な創造物のために白紙のキャンバスを用意することに似ています!

ヒーローセクションの作成

さあ、<body>タグの中にヒーローセクションを追加しましょう:

<section class="hero vh-100 d-flex align-items-center">
<div class="container">
<div class="row">
<div class="col-lg-7">
<h1 class="display-4 fw-bold mb-3">私たちの素晴らしいウェブサイトにようこそ</h1>
<p class="lead mb-4">素晴らしいことを発見し、私たちの先端技術であなたの可能性を解き放ちましょう。</p>
<a href="#" class="btn btn-primary btn-lg">始める</a>
</div>
</div>
</div>
</section>

これを分解すると:

  1. <section>タグを作成し、クラスを設定します:
  • hero:スタイリングのためのカスタムクラス
  • vh-100:セクションをビューポートの高さにします
  • d-flex align-items-center:コンテンツを垂直に中央に配置します
  1. 中にBootstrapのcontainerrowを配置します。

  2. コンテンツはcol-lg-7に配置され、大きなスクリーンでは7カラムを占めます。

  3. Bootstrapのタイポグラフィクラスを使用します:

  • display-4:大で目立つテキスト
  • fw-bold:テキストを太字にします
  • lead:少し大きなパラグラフのテキスト
  1. 「始める」ボタンにはbtn btn-primary btn-lgをスタイリングします。

バックグラウンド画像の追加

私たちのヒーローをさらに英雄的にするために、バックグラウンド画像を追加しましょう:

<style>
.hero {
background: url('https://source.unsplash.com/random/1920x1080') no-repeat center center;
background-size: cover;
position: relative;
}
.hero::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
}
.hero * {
position: relative;
color: white;
}
</style>

このCSSはいくつかのことを行います:

  1. ランダムなバックグラウンド画像をUnsplashから設定します。
  2. テキストの可読性を向上させるための半透明なオーバーレイを作成します。
  3. すべてのテキストを白くし、オーバーレイの上に配置します。

レスポンシブな調整

私たちのヒーローセクションがすべてのデバイスで素晴らしく見えるように、いくつかのレスポンシブなクラスを追加します:

<section class="hero vh-100 d-flex align-items-center text-center text-lg-start">
<div class="container">
<div class="row">
<div class="col-lg-7 mx-auto mx-lg-0">
<h1 class="display-4 fw-bold mb-3">私たちの素晴らしいウェブサイトにようこそ</h1>
<p class="lead mb-4">素晴らしいことを発見し、私たちの先端技術であなたの可能性を解き放ちましょう。</p>
<a href="#" class="btn btn-primary btn-lg px-5 py-3 fs-6">始める</a>
</div>
</div>
</div>
</section>

以下の点が変更されました:

  • text-center text-lg-startを追加して、小さなスクリーンではテキストを中央に、大きなスクリーンでは左に配置します。
  • mx-auto mx-lg-0を追加して、小さなスクリーンでは中央に配置します。
  • ボタンのパディングをpx-5 py-3に増やし、フォントサイズをfs-6に設定します。

最後の仕上げ:アニメーション

ヒーローセクションをさらに魅力的にするために、シンプルなアニメーションを追加しましょう:

<style>
@keyframes fadeIn {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}
.hero h1, .hero p, .hero .btn {
animation: fadeIn 1s ease-out forwards;
opacity: 0;
}
.hero h1 { animation-delay: 0.5s; }
.hero p { animation-delay: 1s; }
.hero .btn { animation-delay: 1.5s; }
</style>

このCSSは以下のことを行います:

  • フェードインとスライドアップの効果を作成します。
  • 各要素が前の要素よりも少し遅れて表示されるように設定します。

そして、ここまでで、未来のウェブウィザードたち!あなたはBootstrapを使って魅力的でレスポンシブでアニメーションされたヒーローセクションを作成しました。練習は完璧を生みますので、さまざまなレイアウト、色、アニメーションを試してみてください。あなたの次のヒーローセクションが、クライアントのウェブサイトを救うかもしれません!

ハッピーコーディング、そしてあなたのピクセルが常に完美に並ぶことを祈っています!

Credits: Image by storyset