2010-05-31 6 views
7

Какова разница между относительным положением и абсолютным положением CSS например .style { позиция: относительная; }позиция в CSS

. Style { { позиция: абсолютная; }

+2

Все, что нужно знать, практический краткий учебник, очень хорошо. http://www.barelyfitz.com/screencast/html-training/css/positioning/ – duckbox

ответ

5

От W3schools:

Абсолютный

Создает абсолютно позиционированного элемент, расположенный по отношению к первого родительского элемента, который имеет положение, отличное от статического. Позиция элемента задается «левый», «верхний», «вправо», и «нижние» свойства

Относительные

Формирует относительно расположенный элемент, расположенный по отношению к его нормальное положение, так что «осталось: 20» добавляет 20 пикселей левого положения элемента

Также проверьте this page, это даст вам очень хороший обзор о позициях в CSS.

1

С относительным вы можете поместить элемент относительно его исходного положения, а исходное пространство все еще удерживает элемент.

Absolute берет элемент из обычного потока HTML, и вы можете поместить его относительно родительского элемента.

+0

Относительно родительского элемента? Это неверно. –

+0

@Philippe Leybaert: необязательно - если родительский элемент имеет позицию: относительный/абсолютный/фиксированный, абсолютное позиционирование будет относиться к родительскому элементу. – oezi

+0

Относительно первого родительского элемента, который позиционируется каким-либо образом, если его нет, он будет относиться к элементу тела –

1

Использование относительной, если учесть, диапазон для родительского элемента или элементов ранее.

Используйте абсолютный, если вы хотите сделать элемент в неприкосновенном положении.

Вы также можете узнать разницу между маржинальной налево и слева Css собственности для относительного и абсолютного

<html> 
<body> 
    <div style="width:300px; height:200px; margin:auto; background:red"> 
     <div style="position:relative; left:10px; top:20px;"> 
      test 
     </div> 
     <div style="position:relative; left:10px; top:20px;"> 
      test 
     </div> 
     <div style="position:absolute; left:0; bottom:0px;"> 
      test 
     </div> 
        <div style="position:absolute; margin-left:0; margin-bottom:0px;"> 
      test 
     </div> 
    </div> 
</body>