Właściwość shape-outside
Właściwość shape-outside pozwala definiować niestandardowe kształty opływania dla elementów pływających.
Sąsiednie elementy będą opływać zadany
kształt, a nie prostokątny kontener.
Składnia
selektor {
shape-outside: wartość;
}
Wartości
| Wartość | Opis |
|---|---|
circle() |
Okrągły kształt opływania |
ellipse() |
Elipsoidalny kształt opływania |
polygon() |
Dowolny kształt wielokątny |
url() |
Kształt na podstawie kanału alfa obrazu |
margin-box |
Użyj granic marginesu (wartość domyślna) |
Przykład
Stwórzmy okrągły kształt opływania
dla elementu pływającego.
Użyjmy właściwości shape-outside i
clip-path:
<div class="shape"></div>
<p>
some long text
</p>
.shape {
width: 150px;
height: 150px;
float: left;
shape-outside: circle(50%);
clip-path: circle(50%);
background: #3498db;
}
p {
width: 500px;
text-align: justify;
}
:
Przykład
Ustawmy odstęp za pomocą właściwości shape-margin:
<div class="shape"></div>
<p>
some long text
</p>
.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;
}
:
Przykład
Bez właściwości clip-path tekst
będzie opływał okrąg, ale element
nie będzie miał kształtu koła:
<div class="shape"></div>
<p>
some long text
</p>
.shape {
width: 150px;
height: 150px;
float: left;
shape-outside: circle(50%);
background: #3498db;
}
p {
width: 500px;
text-align: justify;
}
:
Przykład
Inny kształt elementu:
<div class="shape"></div>
<p>
some long text
</p>
.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;
}
:
Przykład
Inny kształt elementu:
<div class="shape"></div>
<p>
some long text
</p>
.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;
}
:
Zobacz też
-
właściwość
clip-path,
która tworzy widoczny kształt elementu -
właściwość
float,
niezbędna do działania shape-outside -
właściwość
shape-margin,
która dodaje odstęp wokół kształtu