[HTML・CSS・JavaScriptのコーディング不要!?]ノーコードの１つWebflowの使い方についてまとめてみた　~Layoutsについて~

# はじめに
今回はノーコードの１つ、webflowについての解説記事です。

頑張っていきましょう。

#webflowとは
webflowは最近話題のノーコードで使われるツールの１つです。

グラフィカルにホームページが作れたり、wordpressと同じようなCMS機能も持っています。

まるでパワーポイントを作成するようにwebサイトを構築することができますが、最大の特徴はwebサイト上の全ての要素をボックスとして扱うことです。

全ての要素をボックスとして扱うことで、簡単にレスポンシブ対応できるという利点があります。

#全体の画面について
webflow全体の構成を見てみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/d0d752fe-04be-1106-c8a7-a02241f03fc0.png)

この白い部分にHeadingやdivをグラフィカルに配置することで、webサイトを構築することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/db459e4f-0177-ca00-c9a8-c0115d490bc5.png)

実際に細かい機能の使い方を一つ一つ確認してみましょう。

まずは画面の左からです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/43120e97-3e30-6f18-b1a0-20b82b4c31f8.png)

# 機能の確認　画面の左側

まずは上からです。一つ一つ確認してみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/e0d1a26f-9f2d-e9c7-a873-31ed58152f46.png)

## ダーシュボード・セッティング・エディターについて

一番上のWマークを押すと、次の３つが選べます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/5d58f5d9-ede3-4ef9-3cb0-f746bf43407f.png)


####ダッシュボードについて
一番上の`Dashboard`をクリックするとプロジェクト一覧に飛べます。以下の画面です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/f677c841-a451-0951-24e0-c863fa68a60f.png)

####プロジェクトセッティングについて
二番目の`Project settting`を選択すると、このプロジェクト自体の設定を変更できます。以下の画面です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/69d31a9c-3767-466d-6677-2e097ea1a379.png)

ブラウザのタブを開いたときの横に表示される画像であるFaviconやスマホなどでリンクを保存したときの表示される画像であるWebclipなどを設定することができます。

####エディターについて
一番下のEditorをクリックすると、`自分で公開したwebflowのサイト`それ自体を編集することができます。

試しに適当にwebサイトを作成して、右上の`Publish`から公開してみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/6fa844f8-7699-915e-c3dc-d761cd087406.png)

`Publish to Selected Domains`をクリックして、一度このwebサイトを公開してみましょう。

その後、先程の`Editor`を選択してみます。そうすると、以下の画面になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/92ecec3b-7a70-124e-9cc6-58a365a0e606.png)

このように、Editorでは`公開した自分のwebサイト`を編集することができます。

#要素の追加
次は、右上の上から二番目の要素を見てみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/c4221b74-fc70-2be6-7310-09334ed25821.png)

まず、一番上のタブでElementsの要素には、ボタンやformなどのコンポーネントが格納されています。

１つずつ見てみましょう。

### Elements Layoutについて

１つずつ機能を確認してみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/a7a64cea-210d-8704-018f-ba75b076c351.png)

#### Section の使い方について

まずはセクションから使ってみましょう。

実際に使ってみた見た目が以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/faafa99c-b3b7-6012-0dba-efa3a48f7958.png)

空っぽの要素で、中にコンポーネントを格納させて使います。

細かい使い方は[こちら](https://university.webflow.com/lesson/section?utm_source=element-panel)の公式サイトで確認してみてください。

ここから、公式サイトの解説の和訳を載せていきます。要約すると、セクションは幅が100%になり、高さは内部のテキストの高さに合わせて広がります。

>セクションとは、幅が100%のレイアウト要素のことで、ブラウザウィンドウの全幅にまたがっています。セクションはページの構造とレイアウトにおいて重要な役割を果たします。セクションを使うと、コンテンツのブロックを分けたり、ページを意味のあるセグメントに分割したりすることができます。セクションにテキストやメディアを追加すると、高さが変化して高さが定義されます。いくらコンテンツを追加しても、セクションの高さは内部のコンテンツを尊重します。セクションのパディングは高さにも影響します。セクションの上部と下部のパディングを設定し、それに応じて調整できるようにコンテンツを追加するのが最善の方法です。セクションに特定の高さを設定するには、セクションがコンテンツで展開できるように最小の高さ（例えば500px）を設定するのが良いでしょう。通常の高さを設定してしまうと、コンテンツがこぼれてしまったり、切り取られてしまったりします。

#### Containerについて
実際にContainerを使うと以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/d1dcfc58-869f-30cc-e0df-577805a98873.png)

[こちら](https://university.webflow.com/lesson/container?utm_source=element-panel)の公式記事で使い方を確認してみてください。

ここから、公式サイトの和訳を載せていきます。要約すると、最大幅940pxので、親要素の真ん中に位置するdivブロックです。

>コンテナは、あらかじめ定義されたスタイルを持つ Div ブロックです。大きなディスプレイでは幅が940pxになり、ブラウザのウィンドウに対してコンテンツが中央に配置されます。小さいデバイス（携帯電話やタブレットなど）では、コンテナは画面の幅いっぱいに広がります。デフォルトでは、コンテナはすべてのブレークポイントに適応しますが、例えばモバイルのブレークポイントでは、より多くのパディングを持つコンテナのスタイルを設定することができます。モバイル・ランドスケープ・ビューでパディングを調整すると、スタイルはモバイル・ポートレート・ビューにもカスケードされます（小さなブレークポイントに適用されます）。

#### Gridについて
Gridを使うと、Grid layoutを作成することができます。以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/94a46ff8-a019-712b-33cd-44bbd86cb453.png)

細かい使い方は[こちら](https://university.webflow.com/lesson/grid-2-0?utm_source=element-panel)の公式サイトで確認してください。ここでは、簡単にGridの使い方を解説します。

グリッドの使い方見てみましょう。Grid layoutを作成するモードになっているときは、画面の下に`Editing Grid`という文字が示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/280061dd-c856-ff72-fe09-f80468649e72.png)

#####列の追加　行の追加

この画面が出ているときに、右上のプラスボタンを押すと列を追加でき、左下のプラスを押すと行を追加することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/a27c2723-2abe-56a7-1778-879cbde71ff6.png)

上で指定したプラスボタンを一回ずつ押すと、以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/d2364a71-dfbe-3b02-8ccf-35ef11116c2e.png)


##### Gridのモードの切替
完成したら、画面下のDoneを押すとGrid layoutを完成することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/f266c1d0-c5b7-e79c-88ff-eed06c8d8d06.png)

Doneを押すと以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/71d52e1d-ee53-4d74-ed4d-977822c4ec05.png)

これでモデルを完成させることができました。

次に再びGridの編集モードに入ってみましょう。完成したGridを選択すると、以下のような状態になります。

また、赤のマークで囲った部分を押すと、再びGridの編集モードに入れます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/052173a5-2b67-3e03-2088-1175402b2620.png)

#####行の複製・削除 列の複製・削除 
Gridの行や列を削除するためには、行や列のHeaderを右クリックすれば可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/feef8a75-6865-a295-cfd6-6a660b382f09.png)

Delete columnを押せば列を削除でき、Duplicate columnを押せば列を複製することができます。

#####列と行の間の修正
それでは、Grid layoutの列や行の間を調整していきましょう。

方法は２つあります。

１つは、ドラッグで調整する方法です。

調整したい部分をクリックしてドラックすれば、全体のレイアウトを調整することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/c1b7118f-9b59-d1ff-3dc7-3cf8be80995f.png)

もう１つは、画面右の`Edit Grid`の下にあるGapの部分に数値を打ち込む方法です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/f03a93e5-8133-a205-a4fb-6691858d9f4e.png)

`Columns`の上のGapに値を入れると、列の間の幅を調整することができます。また、`Rows`の上のGapに値を入れると、行の間の幅を調整することができます。

#####Grid 列のサイズの調整
列のHeadingの右端をドラッグすると、列自体の大きさを調整することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/0744fe84-5a1b-5bbe-5a13-867249023c79.png)

また、列のHeadingを左クリックして設定をいじることでもサイズを調整することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/663e714d-aaad-3bfb-4b2d-5e4a2a6ceba2.png)

#####行・列の最小/最大値の設定
行や列に対して最小値や最大値を設定することで、行や列が最小値を超えて縮小したり、最大値を超えて拡大したりすることを防ぐことができます。

ちなみに、行の高さはデフォルトではAutoになっており中のコンテンツに合わせて拡大・縮小されます。

最小値、最大値は列や行のHeadingをクリックすると設定できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/899a872d-b14f-29a2-dfe2-ecf0b71c45e7.png)


一番左の列に対して、最小値400pxを設定し、画面幅をタブレットサイズに変更すると、以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/22aa9ba3-dd6b-099c-4540-b16dc87deb32.png)

デフォルトの状態では全てのカラムに対して1FRが設定されており、これが４つ存在するため画面を均等に4分割しています。

しかし、画面幅を小さくすると、画面を４分割した状態では、一番左のカラムが最小値である400pxを維持できなくなります。

そのため、上の図のように、一番左のカラムが400pxで、残りの幅を３つのカラムが均等に配列することになります。

##### Gridの中に子要素を配置
Gridの中に子要素を配置することができます。デフォルトでは、子要素はグリッドの要素に対して左から詰まっていきます。

試しにdiv要素をGridの中に配置してみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/8c6c073c-82f7-c284-5961-c6b724bb2d41.png)

#####Grid Directionの変更
次は、Grid Directionを変更してみましょう。

最初は、Grid DirectionをRowに設定してみましょう。そうすると、Gridに要素を追加すると自動的に行方向に追加されていきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/1dda427a-0875-798c-7800-24ab17c3207e.png)

この方向を列方向に変更してみましょう。

Grid layoutをクリックして、編集モードに切り替えます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/e5bef10c-de83-cf7f-ed09-ccf62c921a89.png)

このDirectionの部分を編集します。現在は`Row`が設定されているため、行方向に要素が並んでいるんでしたね。

今度は、これをColumnに変更します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/cbaf13b0-ce4f-7b87-dcb1-f7b911454355.png)

そうすると、以下のように変化します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/29aac791-e365-253c-29b4-57b086f8a4a4.png)

ちなみに上の1,2,3はGrid layoutの中にボタンを配置して、ボタンの上下のマージンとパディングを除去した後、text-alignをセンターにした後、text-heightとボタンのheightを同じにすることで実現しています。

##### Gridの上に自由に要素を追加
Gridの任意の場所に要素を追加したいときは、要素を配置する際にShiftボタンを押しながら設置すると可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/08ce1580-a48a-43d6-f724-18675ac7d237.png)

ちなみに、Shift + ドラッグで配置しなかった要素を後から自由な場所に移動させたい場合には、`Position`を`Manual`に変更します。

試しに、上の`3`を任意の場所に移動させてみましょう。3のボタンを押して、Edit parent gridのましたのPositionを設定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/4852c739-7ce4-31d3-91c1-722c356a1836.png)

このようにすると、3を自由な位置に移動させることができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/2c81e60c-3fd9-453e-45e1-3bbae6cc0aa2.png)

#####Grid内のセルをコピー
グリッド内のセルをコピーしたいときは、`Altキー`を押したままコピーしたいセルをドラッグ＆ドロップします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/4e22fe45-b513-27b0-3ead-5c62a0cdddd1.png)

#####配置した要素を拡張
配置した要素は自由に拡張させることができます。

セルの右下をクリックして、任意の方向にドラッグすると隣のセルを飲み込むことができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/e9b0f80b-ea11-b05c-003c-bc83a0032cca.png)


また、画面右のパネルを利用することもできます。拡張したいGrid要素を選択して、Positionの下の数字をいじってみましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/e521664b-4940-7a47-0e44-f0e8930e50a8.png)

この４つの数字で、`ｄ`

##### Align-items と Justify-itemsの設定
Gridをクリックして、LayoutのAlignの部分からAlign-itemsとJustify-itemsを設定することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/ec531e2d-0239-123d-8bef-9af60302c4d5.png)

#####Align-selfやJustify-selfの設定

子要素のAlignを設定したいときは、Grid layoutの子要素をクリックしてAlignやJustifyの部分をいじると、Align-selfやJustify-selfの値を設定することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/c4f8d63e-f1ca-7a87-107d-d4e27d0ca169.png)

# Columnsの設定

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/24cae67b-f4de-f9b5-3e36-48bbf5628dde.png)

次は、LayoutのColumnsの設定を行いましょう。画面上に配置すると、以下のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/3a074d7b-8bfb-9dba-6ac2-2d8aaaad83ef.png)

Columnsはどのようなときに使うのでしょうか。公式サイトに、ざっくりと書いていたので参考にしてください。

>カラムを使用して、コンテンツを横に並べて整理します。Webflow では、カラムを追加したり、レイアウトを変更したり、レスポンシブ レイアウトを作成したりすることができます。カラムは、コンテンツを並べて配置したり、整理したりするのに役立ちます。各カラム要素は、1行のカラムで構成されています。

Columnsを配置した後は、ダブルクリックすると設定を開くことができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/933e2b78-a105-b3f1-9964-f860e1bd00f4.png)

今現在は6:6で要素が設定されているようです。これを3:3:3:3に変更してみましょう。上の段の真ん中をクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/fc043c1a-c4e5-bb51-362a-14d6a885d731.png)

このように、レイアウトを変更することができました。ちなみに、`Customize`の下の部分でドラッグを行うことでもレイアウトを変更することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/a169ba29-49e2-3509-e1f9-3305c2cd5688.png)

`columns`はデフォルトでは左右に10pxの余白が入っています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/2094b7d1-0a34-af63-9b53-aa9465ebbc27.png)

また、右のパネルの歯車マークを押すと、colomnsの設定を再度変更することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/c1ff5fbd-bc23-f664-1313-7f8d05c9a60d.png)

##### columnsのレスポンシブデザインについて
右のパネルの設定から、タブレット表示幅のときやスマホの表示幅のときでcolumnsの表示をどのように変更するかを決めることができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/77f28bc9-2432-e80f-0d7f-c480a04eb6a0.png)


この場合、タブレットサイズのときは３列のカラムを並べ、スマホの横向きのサイズになったときに1列のカラムを並べるという設定になっています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/db5a8a87-19e9-5e30-d6a4-2efd9c64cc86.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/411258/3dd0dc05-dfbe-2387-c090-48d265811f92.png)

#終わりに
今回の記事はここまでになります。

ここまで読んで頂きありがとうございました。