Framework7-mixed-layout

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

Framework7-混合レイアウト

説明

単一のビューにさまざまなタイプのレイアウトを混在させることができます。

次の例は、Framework7での混合レイアウトの使用を示しています。 以下に示すように、Navbarとツールバーは、_fixed navbar_と_through toolbar_のような混合レイアウトを持つことができます-

まず、 mixed_layoutl ファイルを作成します。

<!DOCTYPE html>
<html>

   <head>
      <meta name = "viewport" content = "width = device-width, initial-scale = 1,
         maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui"/>
      <meta name = "apple-mobile-web-app-capable" content = "yes"/>
      <meta name = "apple-mobile-web-app-status-bar-style" content = "black"/>
      <title>My App</title>
      <link rel = "stylesheet"
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css"/>
      <link rel = "stylesheet"
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css"/>
   </head>

   <body>
      <div class = "views">
         <div class = "view view-main">

            <div class = "navbar">
               <div class = "navbar-inner">
                  <div class = "center sliding">Mixed Navbar</div>
               </div>
            </div>

            <div class = "pages navbar-fixed toolbar-through">
               <div data-page = "index" class = "page">
                  <div class = "page-content">

                     <div class = "list-block">
                        <ul>
                           <li>
                              <a href = "/framework7/src/mixed_layout-servicesl" class = "">
                                 <div class = "item-content">
                                    <div class = "item-inner">
                                       <div class = "item-title">Go to Services page</div>
                                    </div>
                                 </div>
                              </a>
                           </li>
                        </ul>
                     </div>

                     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.
                        Suspendisse at nibh felis. Nunc consequat diam et tellus tempor gravida.
                        Donec hendrerit aliquet risus, ut tempor purus dictum sit amet. Integer sit
                        amet lacus eget ipsum pulvinar interdum. Proin semper turpis sed placerat dapibus.
                        Sed iaculis id nibh a viverra. Sed vitae tellus sed purus lacinia dignissim.
                        Aenean sagittis interdum leo in molestie. Aliquam sodales in diam eu consectetur.
                        Sed posuere a orci id imperdiet.</p>

                     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.
                        Suspendisse at nibh felis. Nunc consequat diam et tellus tempor gravida.
                        Donec hendrerit aliquet risus, ut tempor purus dictum sit amet. Integer sit
                        amet lacus eget ipsum pulvinar interdum. Proin semper turpis sed placerat dapibus.
                        Sed iaculis id nibh a viverra. Sed vitae tellus sed purus lacinia dignissim.
                        Aenean sagittis interdum leo in molestie. Aliquam sodales in diam eu consectetur.
                        Sed posuere a orci id imperdiet.</p>
                  </div>
               </div>
            </div>

            <div class = "toolbar">
               <div class = "toolbar-inner">
                  <a href = "#" class="link">First Link</a>
                  <a href = "#" class="link">Second Link</a>
               </div>
            </div>

         </div>
      </div>

      <script type = "text/javascript"
         src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>

      <script>
        //here initialize the app
         var myApp = new Framework7();

        //If your using custom DOM library, then save it to $$ variable
         var $$ = Dom7;

        //Add the view
         var mainView = myApp.addView('.view-main', {

           //enable the dynamic navbar for this view:
            dynamicNavbar: true
         });
      </script>
    </body>

</html>

次に、もう1つのHTMLページ、つまり _mixed_layout-servicesl_以下に示すように-

<div class = "navbar">
   <div class = "navbar-inner">
      <div class = "center sliding">Services</div>
   </div>
</div>

<div class = "pages">
   <div data-page = "services" class = "page">
      <div class = "page-content">
         <div class = "content-block">
            <br>

            <h2>Our Services</h2>
            <ul>
               <li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
               eiusmod tempor incididunt ut labore.</li>
               <li>Ut enim ad minim veniam, quis nostrud exercitation ullamco
               laboris.</li>
               <li>Duis aute irure dolor in reprehenderit in voluptate velit esse
               cillum dolore eu fugiat nulla pariatur.</li>
               <li>Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit
               aut fugit.</li>
               <li>At vero eos et accusamus et iusto odio dignissimos ducimus
               qui blanditiis praesentium voluptatum deleniti atque corrupti quos
               dolores et.</li>
               <li>Nam libero tempore, cum soluta nobis est eligendi optio
               cumque nihil impedit quo minus id.</li>
            </ul>

            <p>Go <a href = "#" class = "back">back</a> to home page.</p>
         </div>
      </div>
   </div>
</div>

出力

上記のコードがどのように機能するかを確認するために次の手順を実行してみましょう-

  • 上記のHTMLコードを mixed_layoutl ファイルとしてサーバーのルートフォルダーに保存します。
  • このHTMLファイルをhttp://localhost/mixed_layoutlとして開くと、出力は以下のように表示されます。
  • ナビゲーションバーが修正され、レイアウトがツールバーに適用されていることがわかります。