Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Позиционирование блока по центру экрана (https://javascript.ru/forum/jquery/28706-pozicionirovanie-bloka-po-centru-ehkrana.html)

Keksman 30.05.2012 14:38

Позиционирование блока по центру экрана
 
Доброго времени суток, уважаемые программисты. Помогите пожалуйста с моей проблемой, необходимо позиционировать блок по центру экрана, независимо от того, где вы сами находитесь. У меня получается скрипт, который позиционирует по центру, только если вы в самом верху экрана. Помогите пожалуйста с данной задачей
var cont = $('#container');
	var imag = $('#mainImg');
                 cont.width(imag.width()+20);
		 cont.height(imag.height()+20);
		 cont.css({'width':imag.width()+20,
			 'height':imag.height()+20,});
		 cont.css({
			 'margin-left':cont.width()/2*(-1),
			 'margin-top':cont.height()/2*(-1),
			 });

Блоку $('#container') предварительно были заданы left:50% и top:50%

Deff 30.05.2012 18:02

<div style="
position:fixed;
left:50%;
top:50%;
width:300px;
height:150px;
margin-left:-150px;
margin-top:-75px;">
Тут контент</div>

beard 02.06.2012 00:55

Keksman, ну нормуль, нужно дописать как написал Deff
position:fixed;


почистить это, не совсем понятно зачемо два раза устанавливать ширину/высоту блоку
cont.width(imag.width()+20);
		 cont.height(imag.height()+20);
		 cont.css({'width':imag.width()+20,
			 'height':imag.height()+20,});


и здесь лучше заюзать outerHeight, outerWidth вместо height, width
cont.css({
			 'margin-left':cont.width()/2*(-1),
			 'margin-top':cont.height()/2*(-1),
			 });


http://api.jquery.com/outerHeight/
http://api.jquery.com/outerWidth/


Часовой пояс GMT +3, время: 11:56.