Как установить содержимое страницы в середине экрана?
Возможный дубликат:
Как выровнять <div> до середины страницы
Мне нужно показать содержимое веб-страницы в середине экрана, независимо от размера экрана, большого или малого, разрешения высокого или низкого уровня, оно всегда автоматически настраивается на середину экрана.
Ответы
Ответ 1
Я предполагаю, что вы хотите центрировать поле как по вертикали, так и по горизонтали, независимо от размера окна браузера. Поскольку у вас фиксированная ширина и высота для коробки, это должно работать:
Разметка:
<div></div>
CSS
div {
height: 200px;
width: 400px;
background: black;
position: fixed;
top: 50%;
left: 50%;
margin-top: -100px;
margin-left: -200px;
}
div должен оставаться в центре экрана, даже если вы измените размер браузера. Просто замените margin-top и margin-left на половину высоты и ширины таблицы.
Изменить: кредит отправляется CSS-Tricks, где я получил оригинальную идею.
Ответ 2
Решение для отправленного вами кода:
.center{
position:absolute;
width:780px;
height:650px;
left:50%;
top:50%;
margin-left:-390px;
margin-top:-325px;
}
<table class="center" width="780" border="0" align="center" cellspacing="2" bordercolor="#000000" bgcolor="#FFCC66">
<tr>
<td>
<table width="100%" border="0">
<tr>
<td>
<table width="100%" border="0">
<tr>
<td width="150"><img src="images/banners/BAX Company.jpg" width="149" height="130" /></td>
<td width="150"><img src="images/banners/BAX Location.jpg" width="149" height="130" /></td>
<td width="300"><img src="images/banners/Closet.jpg" width="300" height="130" /></td>
<td width="150"><img src="images/banners/BAX Company.jpg" width="149" height="130" /></td>
<td width="150"><img src="images/banners/BAX Location.jpg" width="149" height="130" /></td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table width="100%" border="0">
<tr>
<td width="150"><img src="images/banners/BAX Company.jpg" width="149" height="130" /></td>
<td width="150"><img src="images/banners/BAX Location.jpg" width="149" height="130" /></td>
<td width="300"><img src="images/banners/Closet.jpg" width="300" height="130" /></td>
<td width="150"><img src="images/banners/BAX Company.jpg" width="149" height="130" /></td>
<td width="150"><img src="images/banners/BAX Location.jpg" width="149" height="130" /></td>
</tr>
</table>
</td>
</tr>
</table>
-
Как это работает?
Пример: http://jsfiddle.net/953Yj/
<div class="center">
Lorem ipsum
</div>
.center{
position:absolute;
height: X px;
width: Y px;
left:50%;
top:50%;
margin-top:- X/2 px;
margin-left:- Y/2 px;
}
- X будет ваша высота.
- Y будет вашей шириной.
Чтобы поместить div
по вертикали и по горизонтали, разделите X и Y на 2.
Ответ 3
Если вы хотите центрировать контент по горизонтали и вертикали, но не знаете заранее, насколько высока ваша страница, вы должны использовать JavaScript.
HTML:
<body>
<div id="content">...</div>
</body>
CSS
#content {
max-width: 1000px;
margin: auto;
left: 1%;
right: 1%;
position: absolute;
}
JavaScript (с помощью jQuery):
$(function() {
$(window).on('resize', function resize() {
$(window).off('resize', resize);
setTimeout(function () {
var content = $('#content');
var top = (window.innerHeight - content.height()) / 2;
content.css('top', Math.max(0, top) + 'px');
$(window).on('resize', resize);
}, 50);
}).resize();
});
![Centered horizontally and vertically]()
Демо: http://jsfiddle.net/nBzcb/
Ответ 4
HTML
<!DOCTYPE html>
<html>
<head>
<title>Center</title>
</head>
<body>
<div id="main_body">
some text
</div>
</body>
</html>
CSS
body
{
width: 100%;
Height: 100%;
}
#main_body
{
background: #ff3333;
width: 200px;
position: absolute;
}
JS (jQuery)
$(function(){
var windowHeight = $(window).height();
var windowWidth = $(window).width();
var main = $("#main_body");
$("#main_body").css({ top: ((windowHeight / 2) - (main.height() / 2)) + "px",
left:((windowWidth / 2) - (main.width() / 2)) + "px" });
});
См. пример здесь