A shape-outside tulajdonság

A shape-outside tulajdonság nem szabványos áramlási formák megadását teszi lehetővé a lebegő elemek számára. A szomszédos elemek a megadott alakzat körül fognak áramlani, és nem a téglalap alakú tároló körül.

Szintaxis

cssszelektor {
  shape-outside: érték;
}

Értékek

Érték Leírás
circle() Kör alakú áramlási forma
ellipse() Ellipszis alakú áramlási forma
polygon() Tetszőleges sokszög alakú forma
url() Kép alfa-csatornája alapján meghatározott forma
margin-box A margó határainak használata (alapértelmezett érték)

Példa

Készítsünk kör alakú áramlási formát egy lebegő elemhez. Használjuk a shape-outside és a clip-path tulajdonságokat:

html<div class="shape"></div>
<p>
  some long text
</p>
css.shape {
  width: 150px;
  height: 150px;
  float: left;
  shape-outside: circle(50%);
  clip-path: circle(50%);
  background: #3498db;
}

p {
  width: 500px;
  text-align: justify;
}

Результат:

Példa

Adjunk meg távolságot a shape-margin tulajdonsággal:

html<div class="shape"></div>
<p>
  some long text
</p>
css.shape {
  width: 150px;
  height: 150px;
  float: left;
  shape-outside: circle(50%);
  shape-margin: 10px;
  clip-path: circle(50%);
  background: #3498db;
}

p {
  width: 500px;
  text-align: justify;
}

Результат:

Példa

A clip-path tulajdonság nélkül a szöveg a kör körül fog áramlani, de magának az elemnek nem lesz kör alakja:

html<div class="shape"></div>
<p>
  some long text
</p>
css.shape {
  width: 150px;
  height: 150px;
  float: left;
  shape-outside: circle(50%);
  background: #3498db;
}

p {
  width: 500px;
  text-align: justify;
}

Результат:

Példa

Más elemforma:

html<div class="shape"></div>
<p>
  some long text
</p>
css.shape {
  width: 200px;
  height: 200px;
  background-color: #4CAF50;
  float: left;
  shape-outside: polygon(0% 0%, 100% 50%, 0% 100%);
  clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
  margin-right: 20px;
  margin-bottom: 20px;
}

p {
  width: 500px;
  text-align: justify;
}

Результат:

Példa

Más elemforma:

html<div class="shape"></div>
<p>
  some long text
</p>
css.shape {
  width: 200px;
  height: 200px;
  background-color: #4CAF50;
  float: left;
  shape-outside: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  margin-right: 20px;
  margin-bottom: 20px;
}

p {
  width: 500px;
  text-align: justify;
}

Результат:

Lásd még

  • a clip-path tulajdonság,
    amely az elem látható alakját hozza létre
  • a float tulajdonság,
    ami szükséges a shape-outside működéséhez
  • a shape-margin tulajdonság,
    amely távolságot ad hozzá az alakzat köré