Bulma-components-modal

提供:Dev Guides
移動先:案内検索

ブルマ-モーダル

説明

モーダルは、親ウィンドウの上に階層化された子ウィンドウです。 親ウィンドウを離れることなく、何らかの相互作用が可能な別のソースからコンテンツを表示します。

以下の3つのモーダルクラスとともに_modal_クラスを使用して、モーダルを表示できます-

  • modal-background -透明なオーバーレイを表示します。
  • modal-content -水平および垂直方向に中央に配置されたコンテナにモーダルコンテンツが含まれます。
  • modal-close -モーダルウィンドウを閉じるために使用します。

以下の例では、ページで上記のクラスを使用してモーダルの表示を示しています-

<!DOCTYPE html>
<html>
   <head>
      <meta charset = "utf-8">
      <meta name = "viewport" content = "width = device-width, initial-scale = 1">
      <title>Bulma Elements Example</title>
      <link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.1/css/bulma.min.css">
      <script src = "https://use.fontawesome.com/releases/v5.1.0/js/all.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
   </head>
   <body>
      <section class = "section">
         <div class = "container">
            <span class = "title">
               Simple Modal
            </span>
            <br>
            <br>

            <p>
               <a class = "button is-primary modal-button" data-target = "#modal">Launch example modal</a>
            </p>
            <div id = "modal" class = "modal">
               <div class = "modal-background"></div>
               <div class = "modal-content">
                  <div class = "box">
                     <article class = "media">
                        <div class = "media-left">
                           <figure class = "image is-64x64">
                              <img src = "https://www.finddevguides.com/bootstrap/images/64.jpg" alt="Image">
                           </figure>
                        </div>
                        <div class = "media-content">
                           <div class = "content">
                              <p>
                                 <strong>Will Smith</strong>
                                 <small>@wsmith</small>
                                 <small>31m</small>
                                 <br>
                                 This is simple text. This is simple text.
                                 This is simple text. This is simple text.
                              </p>
                           </div>
                           <nav class = "level">
                              <div class = "level-left">
                                 <a class = "level-item">
                                    <span class = "icon is-small">
                                       <i class = "fa fa-reply"></i>
                                    </span>
                                 </a>
                                 <a class = "level-item">
                                    <span class = "icon is-small">
                                       <i class = "fa fa-retweet"></i>
                                    </span>
                                 </a>
                              </div>
                           </nav>

                        </div>
                     </article>
                  </div>
               </div>
               <button class = "modal-close is-large" aria-label = "close"></button>
            </div>
         </div>
      </section>

      <script>
         $(".modal-button").click(function() {
            var target = $(this).data("target");
            $("html").addClass("is-clipped");
            $(target).addClass("is-active");
         });

         $(".modal-close").click(function() {
            $("html").removeClass("is-clipped");
            $(this).parent().removeClass("is-active");
         });
      </script>

   </body>
</html>

以下の出力が表示されます-

画像モーダル

Bulmaでは、下の例に示すように、画像のパスとともに_image_クラスを追加することにより、モーダルで画像を表示することができます-

<!DOCTYPE html>
<html>
   <head>
      <meta charset = "utf-8">
      <meta name = "viewport" content = "width = device-width, initial-scale = 1">
      <title>Bulma Elements Example</title>
      <link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.1/css/bulma.min.css">
      <script src = "https://use.fontawesome.com/releases/v5.1.0/js/all.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
   </head>

   <body>
      <section class = "section">
         <div class = "container">
            <span class = "title">
               Image Modal
            </span>
            <br>
            <br>

            <p>
               <a class = "button is-primary modal-button" data-target = "#modal">Launch image modal</a>
            </p>
            <div id = "modal" class = "modal">
               <div class = "modal-background"></div>
               <div class = "modal-content">
                  <p class = "image is-128x128">
                     <img src = "https://www.finddevguides.com/bootstrap/images/64.jpg" alt="">
                  </p>
               </div>
               <button class = "modal-close is-large" aria-label="close"></button>
            </div>
         </div>
      </section>

      <script>
         $(".modal-button").click(function() {
            var target = $(this).data("target");
            $("html").addClass("is-clipped");
            $(target).addClass("is-active");
         });

         $(".modal-close").click(function() {
            $("html").removeClass("is-clipped");
            $(this).parent().removeClass("is-active");
         });
      </script>

   </body>
</html>

以下の出力が表示されます-

モーダルカード

Bulmaは、モーダルカードを使用して、外観を向上させるためにコンテンツをボックスに表示します。

_modal-card_クラスを使用して、モーダルカードの例を作成しましょう-

<!DOCTYPE html>
<html>
   <head>
      <meta charset = "utf-8">
      <meta name = "viewport" content = "width = device-width, initial-scale = 1">
      <title>Bulma Elements Example</title>
      <link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.1/css/bulma.min.css">
      <script src = "https://use.fontawesome.com/releases/v5.1.0/js/all.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
   </head>

   <body>
      <section class = "section">
         <div class = "container">
            <span class = "title">
               Modal Card
            </span>
            <br>
            <br>

            <p>
               <a class = "button is-primary modal-button" data-target = "#modal">Launch Card modal</a>
            </p>

            <div id = "modal" class = "modal">
               <div class = "modal-background"></div>
               <div class = "modal-card">
                  <header class = "modal-card-head">
                     <p class = "modal-card-title">Modal Card</p>
                     <button class = "delete" aria-label = "close"></button>
                  </header>

                  <section class = "modal-card-body">
                     <div class = "content">
                        <h1>Level One</h1>
                        <p>
                           This is simple text. This is simple text.
                           This is simple text. This is simple text.
                        </p>

                        <h2>Level Two</h2>
                        <p>
                           This is simple text. This is simple text.
                           This is simple text. This is simple text.
                        </p>

                        <h3>Level Three</h3>
                        <blockquote>
                           This is simple text. This is simple text.
                           This is simple text. This is simple text.
                        </blockquote>

                        <h4>Level Four</h4>
                        <p>
                           This is simple text. This is simple text.
                           This is simple text. This is simple text.
                        </p>

                        <h5>Level Five</h5>
                        <p>
                           This is simple text. This is simple text.
                           This is simple text. This is simple text.
                        </p>
                        </ul>
                     </div>
                  </section>

               </div>
            </div>
         </div>
      </section>

      <script>
         $(".modal-button").click(function() {
            var target = $(this).data("target");
            $("html").addClass("is-clipped");
            $(target).addClass("is-active");
         });

         $(".modal-close").click(function() {
            $("html").removeClass("is-clipped");
            $(this).parent().removeClass("is-active");
         });
      </script>

   </body>
</html>

以下の出力が表示されます-