3テラバイト

プログラム関連備忘録サイト。主にゲーム。

JavaScript

グリッドレイアウトを実装するJavaScriptライブラリMasonryの使い方

投稿日:

こんにちは、今日はWebサイトにグリッドレイアウトを実装することができるJavaScriptライブラリ、Masonryの使い方についてまとめていきます。

公式サイト

https://masonry.desandro.com/

サンプルコード

CDNからライブラリの読み込みを行なっているため、以下のコードで動作が確認できます。
こちらのサンプルではjQueryも使用しています。

公式サイトにもいくつかサンプルがあり、そちらとほぼ同じものです。

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Language" content="ja">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,user-scalable=no">
    <title>Masonryテスト</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    <script src="https://unpkg.com/masonry-layout@4/dist/masonry.pkgd.min.js"></script>
    <style>
      * { box-sizing: border-box; }
      body { font-family: sans-serif; }
      .grid {
        background: #EEE;
        max-width: 1200px;
      }

      .grid-item {
        width: 160px;
        height: 120px;
        float: left;
        background: #D26;
        border: 2px solid #333;
        border-color: hsla(0, 0%, 0%, 0.5);
        border-radius: 5px;
      }

      .grid-item--width2 { width: 320px; }
      .grid-item--width3 { width: 480px; }
      .grid-item--width4 { width: 640px; }

      .grid-item--height2 { height: 200px; }
      .grid-item--height3 { height: 260px; }
      .grid-item--height4 { height: 360px; }
    </style>
  </head>
  <body>
    <div class="grid">
      <div class="grid-item"></div>
      <div class="grid-item grid-item--width2 grid-item--height2"></div>
      <div class="grid-item grid-item--height3"></div>
      <div class="grid-item grid-item--height2"></div>
      <div class="grid-item grid-item--width3"></div>
      <div class="grid-item"></div>
      <div class="grid-item"></div>
      <div class="grid-item grid-item--height2"></div>
      <div class="grid-item grid-item--width2 grid-item--height3"></div>
      <div class="grid-item"></div>
      <div class="grid-item grid-item--height2"></div>
      <div class="grid-item"></div>
      <div class="grid-item grid-item--width2 grid-item--height2"></div>
      <div class="grid-item grid-item--width2"></div>
      <div class="grid-item"></div>
      <div class="grid-item grid-item--height2"></div>
      <div class="grid-item"></div>
      <div class="grid-item"></div>
      <div class="grid-item grid-item--height3"></div>
      <div class="grid-item grid-item--height2"></div>
      <div class="grid-item"></div>
      <div class="grid-item"></div>
      <div class="grid-item grid-item--height2"></div>
    </div>

    <script>
      $('.grid').masonry({
        itemSelector: '.grid-item'
      });
    </script>
  </body>
</html>

-JavaScript


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

カルーセルを実装するjQueryプラグインslickの使い方

こんにちは、今日はカルーセルを実行できるjQueryプラグイン、slickの使い方についてまとめていきます。 公式サイト https://kenwheeler.github.io/slick/ ダウン …

no image

JavaScriptで処理時間を計測する

performance.now関数を用いて処理時間を計測します。計測したい処理の実行前後にperformance.now関数でtime originからの経過時間を取得し、その差を比較します。 DOM …

no image

JavaScriptでコンソールにデータを表形式で表示する関数Console.table

以下のように引数にオブジェクトを渡すと、その内容を表形式でコンソールに出力することができます。 console.table(["value1", "value2 …

no image

JavaScriptで配列やオブジェクトの一部を代入する分割代入

JavaScriptで変数に配列やオブジェクトから値を代入する際に、左辺の変数名に角括弧[]を付けることで配列やオブジェクトの一部のみ代入することが可能です。 以下の例では変数aに右辺の配列の内最初の …

no image

チャートを簡単に追加できるJavaScriptライブラリChart.jsの使い方

折れ線グラフ、棒グラフ、レーダーチャート、ドーナツチャート、円グラフ、ポーラチャート、バブルチャート、散布図等のチャートをWebサイトに簡単に追加することができます。 公式サイト https://ww …