弊社で作った教材がセール中!
※ 上記リンクからご購入いただければ、割引価格で購入できます。
- Flexboxで最後の1つだけ右寄せにしたい
- Flexboxで最後の1つだけ下寄せにしたい
このようなケースはサイト制作をしていると結構あります。結論、どちらもmarginとautoを使えば簡単に実装できます。
この記事ではサンプルを用いてFlexboxで右寄せや下寄せにする方法を紹介します。
この記事はお悩み解決系の記事なので、Flexboxに関する理解を深めたい方は下の記事をご覧ください。
Flexboxの使い方をどこよりも詳しく解説!図解やサンプルもあり!👇 メンターやってます 👇
模写修行やこのメディアを作ったメンバー中心に、Web制作業界を目指す方のための学習支援サービス 『Hello Mentor』 を運営しています。
特にこんな方におすすめ!
- 基礎学習後にやるべきことがわからない...
- スクール卒だけど実力不足だと感じている...
- 自分のコードが正しい書き方かわからない...
- 未経験から1人で転職できる気がしない...
- 独立するためのノウハウがない...
まずは、下記リンクから個別ガイダンスへお越しください。
👆 メンターやってます 👆
この記事の目次
最後の 1 つだけ右寄せにしたい!
上の図のように、最後の要素だけ右寄せにしたい場合のコード紹介と解説をします。
コード紹介
<header class="header">
    <h1 class="header-logo">
        <img src="logo.png" width="..." height="..." alt="..." />
    </h1>
    <div class="header-search">...</div>
    <button class="header-user-icon">
        <img src="logo.png" width="..." height="..." alt="..." />
    </button>
</header>
.header {
    display: flex;
    ...
}
.header-user-icon {
    margin-left: auto;
}
このようにheader-user-iconに対して、margin-left: auto;を指定するだけです。.header-searchに対してmargin-right: auto;でも良いです。
最後の1つに限らず使える
この方法は最後の1つに限らず使えます。
例1
.flex-item:nth-child(4){
    margin-left: auto;
}
/*
下記でも同じ
.flex-item:nth-child(3){
    margin-right: auto;
}
*/
例2
.flex-item:nth-child(3){
    margin-left: auto;
}
/*
下記でも同じ
.flex-item:nth-child(2){
    margin-right: auto;
}
*/
例3
.flex-item:nth-child(2){
    margin-left: auto;
}
/*
下記でも同じ
.flex-item:nth-child(1){
    margin-right: auto;
}
*/
基礎学習後...迷子になっていませんか?
Web制作業界を目指す方の多くが、基礎学習後にやるべきことがわからず、迷子状態になっています。あなたも下記のように感じていませんか?
- 基礎学習後にやるべきことがわからない...
- スクール卒だけど実力不足だと感じている...
- 自分のコードが正しい書き方かわからない...
- 未経験から1人で転職できる気がしない...
- 独立するためのノウハウがない...
そんな悩みを解決するために、模写修行やこのメディアを作ったエンジニア・デザイナー中心に、学習支援サービス 『Hello Mentor』 を運営しています。
転職成功者や副業・フリーランスデビューした方も出ています。
最後の 1 つだけ下寄せににしたい!
上の図のように、文章の長さが異なると、最後の要素の横のラインが揃いません。
この解決もmarginとautoを使います。
コード紹介
<div class="card">
    <section class="card-item">
        <h3 class="card-title">web制作</h3>
        <p class="card-description">テキスト...</p>
        <a href="..." class="card-button">詳しく見る</a>
    </section>
    <section class="card-item">
        <h3 class="card-title">web制作</h3>
        <p class="card-description">テキスト...</p>
        <a href="..." class="card-button">詳しく見る</a>
    </section>
</div>
.card-item {
    display: flex;
    flex-direction: column;
    ...
}
.card-button {
    margin-top: auto;
}
ポイントは.card-itemに対して、display: flex;を指定し、flex-direction: column;で縦方向に並べることです。これがないと、ただ.card-buttonにmargin-top: auto;を指定しても思うようにいきません。
このケースも最後の1つに限らずに使えます。
また、margin-bottomでも同じように実装できるので、.card-descriptionに対して、margin-bottom: auto;でも同じ見た目になります。
他にもFlexbox関連の記事を上げています!
レイアウトを作るにはFlexboxの理解が必須です。基礎を学びたい方は下記の記事をご覧ください。
Flexboxの使い方をどこよりも詳しく解説!図解やサンプルもあり!Flexboxでもレイアウトは作れますが、デザインによってはCSS Gridの方が適している場合もあります。CSS Gridの使い方は下記の記事をご覧ください。
【CSS Grid入門】図解も交えて使い方を詳しく解説!この記事のように、知っておくと便利なFlexbox関連の記事も多数あげています。
Flexboxで均等幅(同じサイズ)で横並び配置する方法! Flexboxで画像や要素が小さくなる(潰れる)時の対処方法! Flexboxで画像が縦に伸びる(比率がおかしい)時の対処方法!基礎学習後...迷子になっていませんか?
模写修行やこのメディアを作ったメンバー中心に、Web制作業界を目指す方のための学習支援サービス 『Hello Mentor』 を運営しています。
下記のような、基礎学習後にやるべきことがわからず、迷子状態になっている方に特におすすめです
- 基礎学習後にやるべきことがわからない...
- スクール卒だけど実力不足だと感じている...
- 自分のコードが正しい書き方かわからない...
- 未経験から1人で転職できる気がしない...
- 独立するためのノウハウがない...
メンターは、全員が現役のプロです。駆け出しの方やメンターだけをやっている方はいません。
少数精鋭で運営しているため、受け入れ人数に限りがあります。本気でWeb制作業界を目指している方は、ぜひご検討ください。
弊社で作った教材がセール中!
※ 上記リンクからご購入いただければ、割引価格で購入できます。
当メディア運営メンバーでメンターやってます!👉
詳しく見る


基礎学習後に迷子になっていませんか?脱初心者したいなら、私たちにお任せください!