Margin
от Fuedo - Уеб дизайн енциклопедия
Свойството margin позволява да се задава отстояние на даден елемент от останалите елементи, като отстоянието се измерва спрямо рамката. Задава се и на блокови и на инлайн елементи, но когато се зададе на инлайн елементи само хоризонтално отстояние е приложено, вертикалното се игнорира. Стойностите който свойството приема са: px, em, %, auto Броят на стойностите е от 1 до 4, като в зависимост от броят им се прилага margin на различни страни на елементът. Ако е зададена една стойност margin:10px;, 10px margin ще бъде приложен от всички страни на елемента. При 2 зададени стойности margin:10px 20px;, първата отговаря за вертикалното отстояние(отгоре и отдолу на елементът), а втората стойност за хоризонталното(отляво и отдясно). Ако зададете 3 стойности margin:10px 20px 30px;, тогава следите по часовниковата стрелка започвайки отгоре, първата стойност отговаря за горното отстояние, втората отговаря за дясното, третата за долното, а за четвъртата, лявата, се приема автоматично стойността на срещулежащата и стена (в случая дясната т.е. 20px). В последния възможен случай, с четири зададени стойности margin:10px 20px 30px 40px;, следваме горепосоченото правило, като задаваме стойности по часовниковата стрелка започвайки отгоре.
Възможна е комбинация на стойностите като например margin:auto auto 30px 40px;. Също така е въсможно да задавате отрицателни стойности, като по този начин можете да застъпвате елементи.
Някой хора бъркат margin с padding, разликата между тях е, че margin задава отстоянието от рамката до съседния елемент, докато padding определя отстоянието от съдържанието до рамката.
Сега да затвърдим наученото с един пример:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Transparency</title>
<style type="text/css">
#margin1{
width:200px;
height:100px;
border:3px solid black;
background:red;
margin:10px;
}
#margin2{
width:200px;
height:100px;
border:3px solid black;
background:red;
margin:10px 20px;
}
#margin3{
width:200px;
height:100px;
border:3px solid black;
background:red;
margin:10px 20px 30px;
}
#margin4{
width:200px;
height:100px;
border:3px solid black;
background:red;
margin:10px 20px 30px 40px;
}
.outer{
border:3px solid #000;
background:blue;
padding:1px;
width:600px;
}
</style>
</head>
<body>
<div class="outer">
<div id="margin1">
</div>
</div>
<div class="outer">
<div id="margin2">
</div>
</div>
<div class="outer">
<div id="margin3">
</div>
</div>
<div class="outer">
<div id="margin4">
</div>
</div>
</body>
</html>
Разгледайте добре примера.
Бележка: Погледнете статията за деформираният margin, защото това специално поведение в CSS понякога може да ви изненада неприятно.

