Главная > Верстка > Выравнивание div блоков по центру (css, div html)

Выравнивание div блоков по центру (css, div html)

13.09.2009 – 20:26

div по центруСел я верстать и у меня напрочь вылетело из головы как поместить div по центру, но немного прикинув я вспомнил несколько способов как это сделать по всем правилам (:

Во первых, сразу выкинем мысль делать что-то с помощью:

<div align="center"></div>

или

text-align:center;

Это тупые деревенские методы, первый из которых вообще полный бред, а второй корректно располагает div по центру только в ie, в остальных браузерах он лишь располагает по центру текст.

Итак, что мы можем?

Способ 1. Самый крутой.

margin:0 auto;

Очень эффективный метод, который к тому-же позволяет выровнять отступы сверху и снизу.
К примеру, для выравнивания сверху пишем:

margin:10px auto;

Для выравнивания сверху и снизу:

margin:10px auto 5px;

На мой взгляд — это самый лучший способ выровнять блоки по центру. К тому-же он полностью валидный.

Способ 2. Процентный.
Если блок имеет ширину в процентах, то мы можем выровнять div по центру применяя равные отступы, чтобы добить полную ширину до 100%. Кто не понял, покажу на примере, так проще:
Имеем блок шириной 50%, чтобы выровнять его по центру, нам нужно боковые отступы сделать по 25% справа и слева соответственно. Смотрим код:

#test {<br /><br />
width:50%;<br /><br />
margin:0 25% 0 25%;<br /><br />
}

Есть ещё способы, но я не считаю, что они вообще имеют смысл, к примеру позиционирование с использованием отрицательного значения margin. Я и процентный способ написал лишь для примера, используйте первый способ и будет вам счастье :)

Понравилась статья?

Похожие посты:

  1. Hint: размер шрифта(font-size)
  2. CheckBot 1.0 RC1
  3. Правила хорошего CSS
  4. Правила хорошего CSS. Хабрахабр
Категория:Верстка Теги:, , 7,268

Комментарии (всего 22 коммент.)

# Светлана написал(а):
Сен 13, 2009 в 23:18


Первый — это тот, что самый крутой? Немножко путает, что второй есть, а первый не указан (первым идет плохой вариант). Надо бы поправить, в расчете, что материал очень полезный именно новичкам.

# ref написал(а):
Сен 13, 2009 в 23:24


Поправил названия, спасибо за критику. :) Все-же первый вариант лучше, чем второй. Тут есть несколько причин, во первых не всегда верстка идет в процентах(у меня к примеру на блоге), а во вторых он очень простой, всего одно слово «auto» заставляет блок встать по центру — минимализм и красота кода :)

# ref написал(а):
Окт 14, 2009 в 02:46


Пожалуйста :)

# Alex написал(а):
Окт 26, 2009 в 22:49


Всегда рименяю text-align: center; и во всех браузерах смотрется корректно!

# ref написал(а):
Окт 27, 2009 в 03:31


Alex, с помощью text-align:center; выровнять блок не получится, только то, что внутри блока(текст, изображения и т.д.).

# Courage написал(а):
Окт 30, 2009 в 13:12


margin: 0 auto;

Не работает в IE 6

# Мария Шинкарук написал(а):
Ноя 5, 2009 в 15:38


Использую всегда первый вариант.

# sman написал(а):
Ноя 19, 2009 в 17:37


Самый простой и надежный, на мой взгляд смешанный:

#wrap {

width: 1000px;

position: absolute;

left: 50%;

margin-left: -500px;

}

# Александр написал(а):
Дек 21, 2009 в 02:27


Спасибо автору за рецепты. Уже таблицами хотел делать(

# Антон написал(а):
Дек 28, 2009 в 16:15


самый круто способ не работает в ие 7, 8 а способ предлженный sman в комментах не пашет в опере и фф

# Александр написал(а):
Фев 23, 2010 в 14:40


Антон, всё работает в IE8 — сейчас сижу делаю в Windows 7 всё нормально сработало.

ref — классная капча :)

# ref написал(а):
Фев 24, 2010 в 02:08


Александр, спасибо (:

# Светлана написал(а):
Мар 8, 2010 в 01:31


использую метод, который описан в комменте от sman

а из приведеныых автором больше всего понравился процентный. он все же логичнее, чем через margin, имхо

# yadino написал(а):
Мар 9, 2010 в 19:59


margin: 0 auto; не работает в IE6, подтверждаю :(

# ref написал(а):
Мар 9, 2010 в 20:51


А нафига кому-то ie6 ? Он уже умер, причём официально. Я вообще считаю, что поддерживать ie6 это огромный бред.

# Артем написал(а):
Мар 13, 2010 в 07:06


Спасибо чувак, оч помогло

# Михаил написал(а):
Июн 3, 2010 в 10:55


Вот в разных операционках все по-разному. В хр работает в седьмой винде маргин ауто в осле не пашет... а вот с отрицательным половинным маргином (sman ) работает во всех браузерах.

# ref написал(а):
Июн 3, 2010 в 23:42


Как интересно операционная система влияет на работу html и css ?

# 123 написал(а):
Июн 15, 2010 в 15:52


СПС чувак!!!

до этого сидел пытался выравнять по центру 2 дня!!!!!!!!

# Kas написал(а):
Июн 21, 2010 в 13:33


margin: auto; — не работает во многих браузерах и еще зависит о док тайпа.

Проверенный способ — deadblog.ru/go.php?url=ht...ml/align-center/

# Zverokoder написал(а):
Июл 12, 2010 в 14:25


Все отлично, когда ширина центрируемого блока фиксирована, будь то в процентах или в пиксах. А вот отцентрируйте мне блок с шириной ауто )) С помощью марджин. Увы-увы марджин не справляеться. Предлогайте варианты гуру. Я пользу два вложеных блок с позиционированием 50% и — 50%. Эффект «слайдинг дорс»

# all написал(а):
Июл 21, 2010 в 15:25


# ref написал(а):

Мар 9, 2010 в 20:51

Цитировать

А нафига кому-то ie6 ? Он уже умер, причём официально. Я вообще считаю, что поддерживать ie6 это огромный бред.

Нужно 30% посетителям сайтов у которых ие6

Оставить комментарий или два

Подтвердите, что Вы не бот — выберите человечка с поднятой рукой: