Как установить высоту таблицы 100%

SonyEricsson

Новичок
Как установить высоту таблицы 100%

Добрый день. Мне не очень понятно, почему браузер не хочет делать высоту таблицы 100%, код ниже:


<html>
<head>
<title>Пример</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
</head>
<body>
<center>
<table width="900" height=100%>
<tr bgColor="#cbcbcb">
<td>
&nbsp;
</td>
</tr>
</table>
</center>
</body>
</html>

Спасибо.
 

Qwerty

Новичок
1. Необхождимо указывать DOCTYPE в начале документа.
2. Лучше сделать стилем.
 

SonyEricsson

Новичок
Вот код, то же самое

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Web-ii?oae aaiiaioa</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<meta name="description" content="Web-ii?oae aaiiaioa" />
<link href="styles.css" rel="stylesheet" type="text/css" />
</head>
<body>
<center>
<table style="height: 100%; width: 900px;">
<tr bgColor="#cbcbcb">
<td>
&nbsp;
</td>
</tr>
</table>
</center>
</body>
</html>
 

Qwerty

Новичок
Тэг <center> не существует (надо убрать).

и еще сделать
html,body {
 

Qwerty

Новичок
Ну как не помогает? У меня работает в трех браузерах.

PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<style>
html,body {
	margin:0;
	padding:0;
	height:100%;
}
</style>
</head>
<body>

<table style="height:100%;width:900px;margin:auto;">
<tr style="background:#cbcbcb;">
<td>
test 
</td>
</tr>
</table>

</body>
</html>
 

SonyEricsson

Новичок
Да, помогает, спасибо, где-то я ошибся. А вот если, например, три вложенных таблицы: первая фон для рамок, вторая основной фон, а третья данные, причем две строки фиксированный высоты, а третью строку мне нужно чтобы растягивалось до низа, не получается, только если прямо указать высоту?
 

Qwerty

Новичок
Если я правильно понял суть вопроса, то задача не решается - невозможно ограничить вертикальный размер ячейки таблицы определенным размером, она будет растягиваться... :(
 

SonyEricsson

Новичок
Как раз наоборот.

Почему этот код по-разному отображается?


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<style>
html,body {
margin:0;
padding:0;
height:100%;
}
</style>
</head>
<body>

<table style="height:100%;width:900px;margin:auto;" border=2>
<tr height="100">
<td>
&nbsp;
</td>
</tr>
<tr height="100">
<td> &nbsp;
</td>
</tr>
<tr>
<td> &nbsp;
</td>
</tr>
</table>

</body>
</html>
 

Qwerty

Новичок
По-моему, только IE грешит этим... Это его косяк, который много где обсуждался, но решается только обходными путями.
Например, использованием вложенных таблиц или блочной версткой (но у блочной верстки проблема растянуть ее на 100% по высоте).

-~{}~ 06.09.07 14:38:

И еще, раз мы описали в DOCTYPE тип документа, то его нужно придерживаться, иначе работоспособность не гарантирует. Сейчас документ невалидный.
 

Кощей

if(!$needle) die("ooh");
Извините за оффтоп конечно но нафик этот DOCTYPE, вопервіх ниукого еще невидел чтобы он соответствовал действительности,а именно:
"...XHTML 1.0 Strict..."
Сами посмотрите на w3c тест сайта, кучу ошибок найдет.

Вот посмотрите код google.com у них всё как в старинку без єтого бреда, а сразу <html><head> и поехали
 

Qwerty

Новичок
Да, Strict это жестко, согласен, не вижу необходимости.
Но работать со стандартом действительно проще, чем без него, особенно если работать под все браузеры. Это касается и кода страницы, и JavaScript.

-~{}~ 07.09.07 12:04:

Кроме того, пример с сайтом Google не показателен. Что там сложного-то? Конечно, во всех браузерах почти одинаково отобразится. А вот если взять Yandex...
 
Сверху