Спалучэнне float і margin у CSS
Зараз наш тэкст прыціснуты да карцінкі з левага
боку. Давайце паспрабуем крыху адсунуць
гэты тэкст. Для гэтага зададзім нашым абзацам
левы margin у 30px, а дыву-бацьку
- чырвоную мяжу.
Нечакана направа адступіць толькі той тэкст, які прылягае да дыву-бацькі, а тэкст, які прылягае да карцінкі - не адсунецца:
<div>
<img src="img.png" alt="">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
</p>
<p>
some long text
</p>
</div>
div {
width: 400px;
border: 1px solid red;
text-align: justify;
}
p {
margin-left: 30px;
}
img {
float: left;
}
:
Каб зразумець, чаму гэта так, дадамо абзацам зялёную мяжу:
<div>
<img src="img.png" alt="">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
</p>
<p>
some long text
</p>
</div>
div {
width: 400px;
border: 1px solid red;
text-align: justify;
}
p {
margin-left: 30px;
border: 1px solid green;
}
img {
float: left;
}
:
Як мы бачым, на самой справе абзацы адсуваюцца
ад левага краю, але не ад карцінкі, а ад дыву-бацькі.
Каб разгледзець падрабязней, давайце дадамо
яшчэ і паўпразрыстасць карцінкі праз уласцівасць
opacity:
<div>
<img src="img.png" alt="">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
</p>
<p>
some long text
</p>
</div>
div {
width: 400px;
border: 1px solid red;
text-align: justify;
}
p {
margin-left: 30px;
border: 1px solid green;
}
img {
float: left;
opacity: 0.5;
}
:
Вось цяпер дакладна відаць, што рэакцыя на margin-left
ёсць, толькі абзацы на самой справе размешчаны
пад карцінкай. Давайце прыбярэм водступ, пакінуўшы
пры гэтым паўпразрыстасць карцінкі:
<div>
<img src="img.png" alt="">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
</p>
<p>
some long text
</p>
</div>
div {
width: 400px;
border: 1px solid red;
text-align: justify;
}
p {
border: 1px solid green;
}
img {
float: left;
opacity: 0.5;
}
:
Вось так на самой справе выглядаюць нашы абзацы - іх тэкст адсунуты карцінкай, але фізічна абзацы ляжаць пад карцінкай, гэта відаць па мяжы, якая пачынаецца ад левага краю дыву-бацькі.
Давайце вернем margin і заштурхаем карцінку
ў першы абзац:
<div>
<p>
<img src="img.png" alt="">
Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
</p>
<p>
some long text
</p>
</div>
div {
width: 400px;
border: 1px solid red;
text-align: justify;
}
p {
margin-left: 30px;
border: 1px solid green;
}
img {
float: left;
opacity: 0.5;
}
:
Цяпер карцінка рухаецца разам з абзацамі!