Реклама на сайте Advertise with us

Отцентровать DIV

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

Люблю то, что делаю!

С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418


Передовик Master-X (16.12.2014) Передовик Master-X (16.02.2017) Передовик Master-X (01.03.2017) Передовик Master-X (16.03.2017) Передовик Master-X (01.09.2017) Ветеран трепа Master-X (16.09.2017)
Ссылка на сообщениеДобавлено: 24/09/12 в 16:11       Ответить с цитатойцитата 

нужно Дивку поставить в центре страницы по горизонтале и вертикале, как сделать правильно, подскажите пожалуйста.

0
 



С нами с 01.04.07
Сообщения: 4378
Рейтинг: 2970

Ссылка на сообщениеДобавлено: 24/09/12 в 16:46       Ответить с цитатойцитата 

Код:

position: absolute;
top: 50%;
left: 50%;

Но с другим кодом будут нюансы.

8
 



С нами с 13.01.03
Сообщения: 1032
Рейтинг: 1146

Ссылка на сообщениеДобавлено: 24/09/12 в 17:34       Ответить с цитатойцитата 

gimcnuk: так ведь, если не ошибаюсь, этот код гарантирует лишь то, что верхний левый угол "Дивки" будет в середине экрана?

я бы еще отрицательных краев добавил...))

position: absolute;
top: 50%;
left: 50%;
margin-left:(-50% от ширины блока);
margin-top:(-50% от высоты блока);

правда не всегда высота и ширина абсолютные значения...(

8
 

Добрых Дел Мастер

С нами с 03.05.08
Сообщения: 3143
Рейтинг: 1227

Ссылка на сообщениеДобавлено: 24/09/12 в 23:25       Ответить с цитатойцитата 

у вертикали высота заранее известна?
у дива высота заранее известна?

если да, то
margin: 0 auto;
margin-top: тут посчитай число. вручную.

пришел к победе коммунистического труда

8
 



С нами с 12.10.12
Сообщения: 18
Рейтинг: 13

Ссылка на сообщениеДобавлено: 12/10/12 в 16:41       Ответить с цитатойцитата 

Это работает в случае, если высота DIV'а заранее известна. Если нет, что бывает гораздо чаще, то я бы рекомендовал использовать JQuery.

Как пример:

Код:

$(window).resize(function(){
   $('.className').css({
      position:'absolute',
      left: ($(document).width() - $('.className').outerWidth())/2,
      top: ($(document).height() - $('.className').outerHeight())/2
   });

});

// Для запуска функции:
$(window).resize();


Это дело выровняет тебе блок .className неизвестной высоты по центру страницы.

Есть единственная постоянная константа: человеческая глупость.

8
 



С нами с 24.07.12
Сообщения: 1678
Рейтинг: 133

Ссылка на сообщениеДобавлено: 12/10/12 в 22:28       Ответить с цитатойцитата 

А если попробовать тупо в программке выравнять? В дримвьювере вроде можно на визуальном уровне подобные вещи делать. Но это так - мысль, не факт, что верная. По 50 процентов ставить - вернее.

0
 



С нами с 12.10.12
Сообщения: 18
Рейтинг: 13

Ссылка на сообщениеДобавлено: 12/10/12 в 22:52       Ответить с цитатойцитата 



Сработает для ячейки таблицы. Давным-давно, когда деревья были ещё зелёные, девушки красивые а я молодой icon_biggrin.gif именно так и делалось: создавалась таблица размером 100% на 100%, и в ней создавалась единственная ячейка имеющая параметр align=center & valign=middle.

А потом появились CSS & DIV'ная вёрстка, и это стало неактуально. Впрочем, если кто по старинке захочет, то примерный CSS-код выглядит примерно так:
Код:

CSS:
====
table{ width: 100%; height: 100%; }
table td {vertical-align: middle; text-align: center; }

HTML:
=====
<table>
<tr>
<td>
    <div>Йа блокъ!</div>
</td>
</tr>
</table>


Но вообще подобное решение противоречит идеологии HTML/CSS — таблицы нужны для того, чтобы в них писать данные, а не для разметки, поэтому как-то со временем подобный стиль написания кода отмер практически везде, за исключением совсем уж глубоких запиндей. icon_smile.gif

P.S.: WYSIWYG-редакторы — это зло. trollface.png

Есть единственная постоянная константа: человеческая глупость.

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »