レスポンシブの margin と width 設定

CSS

目次一覧

 状態:-  閲覧数:1,078  投稿日:2022-09-14  更新日:2022-09-14
要件 / 結論コード / 考え方

要件 / 結論コード / 考え方

 閲覧数:313 投稿日:2022-09-14 更新日:2022-09-14

要件


縦 2 列に並べたい。
marginを均等に設定したい。


結論コード


@media (max-width: 1500px) {
  .box {
    margin:0 0 0 1em;
    width: calc((100% - 3em) / 2);
  }
}


考え方


1.最初に「margin」を決定します。
今回は、1emと設定しました。

2.次に今回必要な「margin」の数を決定します。
今回は縦 2 列なので、計 3 つのmargin( 3 × 1 em)が必要になります。

3.次に縦 2 列それぞれの「width」を決定します。
全体(100%)から、計 3 つのmargin( 3 × 1 em)を引いた数値が、縦 2 列のwidthになります。
縦 1 列のwidthを求めたいので、2 で割ります。
width: calc((100% - 3em) / 2);



隣接兄弟結合子{h1 + p}と、一般兄弟結合子{h1 ~ p}では、意味が異なります。 直後にある要素を選択は、隣接兄弟結合子{h1 + p}です。

CSSで直前の要素を取得するセレクタはない。ので、直後の要素を取得してマイナス設定値を指定しました。



週間人気ページランキング / 3-12 → 3-18
順位 ページタイトル抜粋 アクセス数
1 ログイン 20
2 Design 0 19
3 Adobe Camera Raw 4.0 | Photoshop 5
4 キャラクター無料作成ジェネレーター / FLASH / オンラインサービス | イラスト参考(デザイン) 4
4 RGBの種類 / ビットカラー | RGB(色) 4
4 「Google Chrome」ブックマークをフォルダー単位で、「ドメイン毎」「追加日昇降順」に並べ替える拡張機能「Sortmark」 | Chrome 拡張機能 4
4 色モデルイメージ図 | 色変換(色) 4
5 「display:flex;」を設定している「
  • タグ」内の「タグ」クリック範囲を拡大する | Flexible Box Layout Module(CSS)
  • 3
    5 RGB ⇔ Lab | 色変換(色) 3
    5 「bgcolor」「background-color」「background」の違い | CSS 3
    5 「属性」「プロパティ」「アトリビュート」の違い | CSS 3
    5 テーブル枠線がどうしても消えない時は「border-collapse: collapse;」 | Backgrounds and Borders Module(CSS) 3
    5 「Chrome拡張機能」開発中に遭遇したエラー | Chrome 拡張機能 3
    6 「Illustrator CS3」で出力範囲指定 | Illustrator CS3(Illustrator) 2
    6 型 / 型 / 2
    6 ボーダーでごまかす 2
    6 CSSが反映されない時にやること 2
    6 「Illustrator CS2」「Fireworks 8」「Photoshop CS2」比較 | Fireworks 8(Fireworks) 2
    6 「z-index」効果を打ち消すスタイルシートは、「z-index:auto;」 2
    6 キャッシュを待機しています →「chrome://net-internals/#dns」→「Clear host cache」ボタンクリック | Google Chrome(ブラウザ) 2
    2026/3/19 5:05 更新