30. Позиционирование блоков.

По умолчанию блоки позиционируются (располагаются) на странице в нормальном потоке. Это последовательное размещение блоков слева направо и сверху вниз. Нормальный поток соответствует свойству блока position со значением static (это по умолчанию).

position: absolute (абсолютное позиционирование)

При этой схеме расположение блока задается прямым указанием. Для этого существуют четыре свойства:

От чего считаем при абсолютном позиционировании:

position: fixed (фиксированное позиционирование)

По своему действию близко к absolute, но привязка идёт всегда к окну браузера (а не к родительскому элементу). И, как следствие, положение элемента не меняется при прокрутке страницы!

position:relative (относительное позиционирование)

Положение элемента устанавливается относительно его исходного места в нормальном потоке. Добавление свойств left, top, right и bottom изменяет позицию элемента и сдвигает его в ту или иную сторону от первоначального расположения.

z-index

Блоки могут накладываться друг на друга (position:absolute|fixed|relative).

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

Плавающие блоки

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

Чтобы сделать блок плавающим, используется свойство float (возможные значения: left, right, none).

Плавающим может быть любой блок, кроме абсолютно позиционированных (position: absolute|fixed).

Особенности элемента, у которого float установлено в значение left или right:

clear

Свойство clear определяет, какие стороны плавающего блока не могут соседствовать с другими плавающими блоками.