このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

shape-margin

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2020年1月.

shape-marginCSS のプロパティで、shape-outside を使用して作成された CSS シェイプのマージンを設定します。

試してみましょう

shape-margin: 0;
shape-margin: 20px;
shape-margin: 1em;
shape-margin: 5%;
<section class="default-example" id="default-example">
  <div class="example-container">
    <div class="transition-all" id="example-element"></div>
    私と同行者は、夕食後、遅くとも 11 時までに彼の家に迎えにいくことで合意していた。この運動神経抜群の若いフランス人は、気球乗りを趣味とするパリのスポーツ愛好家たちの小さなグループに属している。通常のスポーツで得られるあらゆる感覚、猛スピードでの「自動車運転」のスリルさえも尽くした後、「エアロクラブ」のメンバーたちは今や空へと目を向け、あらゆる種類の危険な技に興じながら、地上ではもはや探せなくなった神経をすり減らすような興奮を求めている。
  </div>
</section>
.example-container {
  text-align: left;
  padding: 20px;
}

#example-element {
  float: left;
  margin: 20px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background-color: rebeccapurple;
  shape-outside: circle(50%);
}

マージンで、シェイプ (浮動要素) の縁と周囲のコンテンツとの間隔を調整することができます。

構文

css
/* <length> 値 */
shape-margin: 10px;
shape-margin: 20mm;

/* <percentage> 値 */
shape-margin: 60%;

/* グローバル値 */
shape-margin: inherit;
shape-margin: initial;
shape-margin: revert;
shape-margin: revert-layer;
shape-margin: unset;

<length-percentage>

シェイプのマージンを <length> 値または要素の包含ブロックの幅に対する <percentage> で設定します。

公式定義

初期値0
適用対象浮動要素
継承なし
パーセント値包含ブロックの幅に対する相対値
計算値指定通り。ただし相対的な長さはは絶対的な長さに変換される
アニメーションの種類length または パーセント値, calc();

形式文法

shape-margin = 
<length-percentage [0,∞]>

<length-percentage> =
<length> |
<percentage>

多角形にマージンを追加

HTML

html
<section>
  <div class="shape"></div>
  生物学において我々は確信できることは何一つない。地質学に関する我々の知識は相対的にとてもわずかであり、社会の経済法則はそれを設定しようとする一部の個人を除いて誰にとっても不確かである。しかし世界が形作られる前から、直角三角形において斜辺の二乗は他の 2 種類の辺の二乗の和に等しく、この世界が滅びた後もそれは変わらない。火星に生命体が存在する場合、おそらく彼らは我々が知るのと同様にその真実を知っているだろう。
</section>

CSS

css
section {
  max-width: 400px;
}

.shape {
  float: left;
  width: 150px;
  height: 150px;
  background-color: maroon;
  clip-path: polygon(0 0, 150px 150px, 0 150px);
  shape-outside: polygon(0 0, 150px 150px, 0 150px);
  shape-margin: 20px;
}

結果

仕様書

Specification
CSS Shapes Module Level 1
# shape-margin-property

ブラウザーの互換性

関連情報