Выравнивание div по центру
Выравнивание слоя строго по центру веб-страницы применяется обычно для размещения картинки, служащей точкой входа на сайт или информационного сообщения. Удобство подобного расположения слоя — его независимость от разрешения экрана монитора и окна браузера. В любом случае слой будет занимать положение по центру веб-страницы.
Вначале следует указать ширину и высоту слоя с помощью свойств width и height. Размеры можно задавать в пикселах, процентах или других единицах. Ширину, например, можно определить в процентах, а высоту в пикселах.
Следующий шаг — задаем абсолютное позиционирование слоя через position со значением absolute. Положение слоя следует задать как 50% по горизонтали и вертикали с помощью свойств left и top. Эти значения остаются неизменными, независимо от используемых единиц измерения.
Так как координаты слоя мы определяем от его левого верхнего угла, для точного выравнивания следует добавить свойства margin-left и margin-top с отрицательными значениями. Их величина должна быть равна половине ширины слоя (для margin-left) и высоты (для margin-top).
Чтобы высота слоя не менялась из-за его контента, включено свойство overflow: auto, оно добавляет полосы прокрутки, если в них возникнет нужда, высота при этом остается неизменной (пример 1).
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Выравнивание по центру</title> <style type="text/css"> #centerLayer { position: absolute; /* Абсолютное позиционирование */ width: 280px; /* Ширина слоя в пикселах */ height: 180px; /* Высота слоя в пикселах */ left: 50%; /* Положение слоя от левого края */ top: 50%; /* Положение слоя от верхнего края */ margin-left: -150px; /* Отступ слева */ margin-top: -100px; /* Отступ сверху */ background: #fc0; /* Цвет фона */ border: solid 1px black; /* Параметры рамки вокруг */ padding: 10px; /* Поля вокруг текста */ overflow: auto; /* Добавление полосы прокрутки */ } </style> </head> <body> <div id="centerLayer"> Будем также считать, что сила даёт большую проекцию на оси, чем газообразный центр сил, что обусловлено существованием циклического интеграла у второго уравнения системы уравнений малых колебаний. </div> </body> </html>
Рис. 1. Слой, выровненный по центру веб-страницы
Учтите, что ширина слоя складывается из значений свойств width, padding, margin и border, это следует принимать во внимание при указании значений margin-left. Аналогично обстоит дело и с margin-top.
Источник: htmlbook.ru