ラベル bootstrap の投稿を表示しています。 すべての投稿を表示
ラベル bootstrap の投稿を表示しています。 すべての投稿を表示

Bootstrap実践編 - スライダーの追加②

お疲れ様です。
ライフマップ開発チームの大城です。

本日は、前回追加した画像スライダーをカスタマイズしていこうと思います。 
前回の記事はこちらです!
https://tech-lifemap.blogspot.com/2022/12/bootstrap-3.html

# Webサイト改修

## 前回の振り返り

前回は画像スライダーの追加を行いました。 
サンプルを作りましたので、比較用にお使いください。 
https://life-campaign.com/tech/bootstrap/03

## 画像スライダーのカスタマイズ

### 事前準備

前回追加した画像スライダーには ID を設定していませんでした。 
次に紹介する前後ボタン等は、どのスライダーを操作するのか指定しなければ動作しない為、事前に ID を設定しましょう。 
スライダーのDIV要素のID属性に carousel-top と入力してください。

<div id="carousel-top" class="carousel slide" data-bs-ride="carousel">

### 前後(Prev/Next)ボタンの追加

以下のコードを .carousel-inner の次に加えると、前後の画像に切り替えるボタンが追加されます。

    <button class="carousel-control-prev" type="button" data-bs-target="#carousel-top" data-bs-slide="prev">
        <span class="carousel-control-prev-icon" aria-hidden="true"></span>
        <span class="visually-hidden">Previous</span>
    </button>
    <button class="carousel-control-next" type="button" data-bs-target="#carousel-top" data-bs-slide="next">
        <span class="carousel-control-next-icon" aria-hidden="true"></span>
        <span class="visually-hidden">Next</span>
    </button>

[クラス名の説明]  

  • carousel-control-prev: 前に戻るボタンに付与するクラス名です  
  • carousel-control-next: 次に進むボタンに付与するクラス名です  
  • carousel-control-prev-icon: 前に戻るボタンのアイコン表示用のクラスです  
  • carousel-control-next-icon: 次に進むボタンのアイコン表示用のクラスです  
  • visually-hidden: 補助技術(スクリーンリーダー等)から隠すクラス名です  

[属性の説明]  

  • data-bs-target: 対象のスライダーを指定します  
  • data-bs-slide: 対象のスライダーの方向を指定します  
  • aria-hidden: 補助技術(スクリーンリーダー等)から隠すオプションです  

リンク先のように動作すれば完了です。 
手動でスライダーを操作できるので、より便利になりますね。
https://life-campaign.com/tech/bootstrap/04/1.html

### インジケーターの追加

以下のコードをスライダーの子要素の頭に配置すると、インジケーターが追加されます。

  <div class="carousel-indicators">
    <button type="button" data-bs-target="#carousel-top" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
    <button type="button" data-bs-target="#carousel-top" data-bs-slide-to="1" aria-label="Slide 2"></button>
    <button type="button" data-bs-target="#carousel-top" data-bs-slide-to="2" aria-label="Slide 3"></button>
  </div>

[クラス名の説明]  

  • carousel-indicators: インジケーターに付与するクラスです  
  • active: 最初に表示する画像に付与するクラスです

[属性の説明]  

  • data-bs-target: 対象のスライダーを指定します  
  • data-bs-slide-to: 対象のスライダーの何枚目に移動するか指定します
  • aria-current: 現在の位置を示します
  • aria-label: 現在の位置に名前を付けます

リンク先のように動作すれば完了です。 
一気に指定のページまで移動できるのは便利ですよね。 
https://life-campaign.com/tech/bootstrap/04/2.html

# 最後に

カルーセルにはまだまだオプションがたくさんあります。 
次回も引き続き紹介していくので、気が向けばまた見に来て下さい〜  

大城でした!

Bootstrap実践編 - スライダーの追加①

お疲れ様です。  
ライフマップ開発チームの大城です。

本日は、Bootstrapを使ってサイトのトップに画像スライダーを追加したいと思います。  
前回の記事はこちら!  
https://tech-lifemap.blogspot.com/2022/04/bootstrap-2.html

# Webサイト改修


## 画像スライダー


早速サイトのトップに画像スライダーを追加していきましょう。 マニュアルだとこちらになります。 https://getbootstrap.jp/docs/5.0/components/carousel/ まずは36行目のHello World!!を消しましょう。
<h1>Hello, world!</h1>
削除した行に画像スライドを入れます。 マニュアルにあるSlide onlyのサンプルコードをそのまま貼り付けてください。 https://getbootstrap.jp/docs/5.0/components/carousel/#slides-only
<div id="carouselExampleSlidesOnly" class="carousel slide" data-bs-ride="carousel">
  <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
  </div>
</div>
[クラス名の説明]
  • carousel slide: Bootstrapのカルーセル機能を使用するには必須のクラス名です。
  • carousel-inner: カルーセルの中身をこのクラス名で囲みます。
  • carousel-item: スライドさせる要素1つ1つに付けるクラス名です。
  • active: 1番初めに表示させる要素に付けるクラス名です。
[属性の説明]
  • data-bs-ride="carousel": ページ読み込み時にカルーセルをスライドさせる為に必要な設定です。
サンプルコードのままだと画像が表示されないです。 なぜかというと、imgタグのsrc属性の値が「...」だからです。 画像ファイルを用意するのは手間なので、簡単に作成できるSVGを使ってみましょう! svgタグは次のように作成します。
<svg class="d-block w-100" width="800" height="400">
    <rect width="100%" height="100%" fill="#777"/>
    <text x="50%" y="50%" fill="#555">First slide</text>
</svg>
[クラスの説明]
  • d-block: display: block;
  • w-100: width: 100%;
[SVGの属性と子要素の説明]
  • width: 幅の指定
  • height: 高さの指定
  • <rect ... />: SVGの画像パーツ
    • width: 幅の指定
    • height: 高さの指定
    • fill: 背景色の指定
  • <text>...</text>: SVGのテキストパーツ
    • width: 幅の指定
    • height: 高さの指定
    • fill: 背景色の指定
    • ...: テキスト内容

作成したsvgタグをimgタグに上書きしましょう。
2個目、3個目のテキストはSecond、Thirdに書き換えてくださいね。

<div id="carouselExampleSlidesOnly" class="carousel slide" data-bs-ride="carousel">
  <div class="carousel-inner">
    <div class="carousel-item active">
        <svg class="d-block w-100" width="800" height="400">
            <rect width="100%" height="100%" fill="#777"/>
            <text x="50%" y="50%" fill="#555">First slide</text>
        </svg>
    </div>
    <div class="carousel-item">
        <svg class="d-block w-100" width="800" height="400">
            <rect width="100%" height="100%" fill="#777"/>
            <text x="50%" y="50%" fill="#555">Second slide</text>
        </svg>
    </div>
    <div class="carousel-item">
        <svg class="d-block w-100" width="800" height="400">
            <rect width="100%" height="100%" fill="#777"/>
            <text x="50%" y="50%" fill="#555">Third slide</text>
        </svg>
    </div>
  </div>
</div>

## 確認


ここまで改修したら、一旦表示内容を確認してみましょう。 いい感じに画像スライダーが表示されていると思います!

簡単に色々な機能を追加できるのが、Bootstrapのいいところですよね。

今回はここまでとします。
次回もどうぞよろしくお願いいたします。
大城でした!

Bootstrap実践編 - ヘッダーメニューの追加

お疲れ様です。
ライフマップ開発チームの大城です。

本日は、Bootstrapを使って簡単なヘッダーメニューをWebサイトに追加しようと思います。
Bootstrap導入編はこちらをご覧ください!
https://tech-lifemap.blogspot.com/2022/04/bootstrap.html


# Webサイト作成

ヘッダーメニュー

早速サイトの上部にメニューを追加していきましょう。
ドキュメントだとこの部分です。

こんな感じでコードを追加しましょう。

  <header>
      <nav class="navbar navbar-light bg-light">
        <div class="container-fluid">
          <h1 class="navbar-brand mb-0">Navbar</h1>
        </div>
      </nav>
    </header>

クラスの説明

  • navbar: ナビゲーションバー用装飾適応
  • navbar-light: メニューの文字色の指定。背景色に合わせてlightかdarkを選びます。
  • bg-light: 背景色の指定。今回は薄い灰色。
  • container-fluid: レイアウトの指定。横幅いっぱいに要素を表示します。
  • navbar-brand: ロゴやサイト名に使用します。文字色の指定だけみたい...?


ヘッダーメニューが追加されましたね。


次は適当なメニュー項目を追加しましょう。
以下のコードを追加してください。

    <nav class="navbar navbar-expand-lg navbar-light bg-light">

クラスの説明

        <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
            <span class="navbar-toggler-icon"></span>
          </button>
          <div class="collapse navbar-collapse" id="navbarNav">
            <ul class="navbar-nav">
              <li class="nav-item">
                <a class="nav-link active" href="#">Home</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">Features</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">Pricing</a>
              </li>
              <li class="nav-item">
                <a class="nav-link disabled" href="#">Disabled</a>
              </li>
            </ul>
          </div>

クラスの説明

  • navbar-toggler: メニュー開閉ボタンの装飾
  • navbar-toggler-icon: メニュー開閉ボタンのアイコン
  • collapse: コラプス機能を使う場合設定します。
  • navbar-collapse: メニュー開閉エリアの装飾
  • navbar-nav: メニューの装飾
  • nav-link: メニューの装飾
  • active: nav-linkに付ける事でメニューを強調します。
  • disabled: nav-linkに付ける事でメニューを非活性化します。

属性の説明

  • data-bs-toggle="collapse": このボタンはコラプス機能のトグルです、と指定する
  • data-bs-target="#navbarNav": コラプスする対象は〇〇(id)です、と指定する


これでメニュー項目が追加されたと思います!

コラプス機能が使われているので、幅が狭くなるとメニューも開閉式に変わるかと。
簡単にレスポンシブ対応できて便利ですよね〜


今回はここまでとします!

それではまた次回〜
大城でした。

Bootstrap導入編

お疲れ様です。
ライフマップ開発チームの大城です。

初めの記事を上げてからだいぶ時間が経ってしまいました...お恥ずかしい限りです。

本日はBootstrapの使い方を説明したいと思います。
簡単にオシャレなWebサイトが作成できるので、デザインできないよ〜なんて悩んでる方はぜひBootstrapを使ってみてください。

なんだか難しい...とか、これ間違ってるよ!等あればコメントでご指摘いただけると助かります。m(__)m


# 準備

作業場所の作成

まずは作業するディレクトリを作成しましょう。
後々絶対やって良かった!と思うはずなので、お勧めです。

ディレクトリ構成はこんな感じになります。

~/Developments/bootstrap
┗index.html

HTMLファイル1個だけですね。


HTMLテンプレートファイル作成

次はBootstrapが使えるHTMLファイルを作成しましょう。
公式ドキュメントにスターターテンプレートが用意されているので、そのまま使っちゃいます。
https://getbootstrap.jp/docs/5.0/getting-started/introduction/#%E3%82%B9%E3%82%BF%E3%83%BC%E3%82%BF%E3%83%BC%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88

わかりやすいように、使わない部分を省いたものを載せておきます。

<!doctype html>
<html lang="ja">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <!-- Bootstrap CSSファイル読み込み -->
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
</head>
<body>
  <h1>Hello, world!</h1>
  <!-- Bootstrap JSファイル読み込み -->
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
</body>
</html>

これで準備は完了です!
実際にブラウザで開いてみて、『Hello, world!』と表示されているか確認してください。


こんな感じで、今回は終わりたいと思います。
短くてしょーもない内容ですが、Bootstrapは便利で使いやすいよ!って事を伝えたかったので、許してください。(;;)

続きは次回、Bootstrapを使って簡単なWebサイトを作るところから書きたいと思います。

大抵はドキュメントのサイドメニューにある『Components』カテゴリにあるので、自分で試してみたい!という方はドキュメント見た方が楽しいかもです。

それではまた次回〜
大城でした。



ブログ移行のお知らせ。

お世話になっております。 ライフマップ開発チームの大城です。 この度ブログサービスをNoteに移行する事になりました。 https://note.com/tech_lifemap/ 短い間でしたが、お世話になりました。 移行先でも何卒よろしくお願いいたします。 それでは!