Limited support 注意が必要。一部のブラウザのみ対応。プロダクション利用は慎重に判断すること。

概要

コンテナの端に位置する子要素のマージンを自動的に削除するプロパティです。カードやセクションの内側で、最初や最後の子要素の不要なマージンを手動で除去する必要がなくなります。:first-childや:last-childでのマージンリセットという一般的なパターンを置き換える、よりエレガントなソリューションです。

対応ブラウザ

デスクトップ

Chrome 未対応
Edge 未対応
Safari 16.4+
Firefox 未対応

モバイル

Chrome Android 未対応
Safari iOS 16.4+
Firefox Android 未対応

基本構文

CSS
.card {
  margin-trim: block;
  padding: 16px;
}
.card > * {
  margin-block: 16px;
}

実務での使いどころ

  • コンテナ端のマージン自動除去

    カードコンポーネントでmargin-trim: blockを設定し、先頭・末尾の子要素の不要な上下マージンを自動的に除去します。

注意点

  • 2026年3月時点でSafariのみの対応です。フォールバックとして:first-child/:last-childのマージンリセットを併用してください。

アクセシビリティ

  • margin-trimは純粋にレイアウトの調整であり、アクセシビリティに直接影響しません。