Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Не верная высота колонок (http://forum.oszone.net/showthread.php?t=109761)

Qwe1 23-06-2008 00:01 832616

Не верная высота колонок
 
В таблице есть колонки для которых высота жестко задана. В FF и O все нормально, а в IE6 размер этих колонок больше раза в 3. Почему и как это исправить?
HTML код:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
<style type="text/css">
<!--
body {
        background: #efeff1;
        margin: 0px;
        padding: 0px;
}
-->

</style>
</head>
<body>
 
<br><br><br><br>
<table width="50%" border="1" cellspacing="0" cellpadding="0" align="center">
  <tr>
    <td width="50" height="100">&nbsp;</td>
    <td rowspan="2" bgcolor="#FFFFFF">
    <br><br><br><br><br><br><br><br><br>
    <br><br><br><br><br><br><br><br><br>
    <br><br><br><br><br><br><br><br><br>
    <br><br><br><br><br><br><br><br><br>
    </td>
    <td width="50" height="100">&nbsp;</td>
  </tr>
  <tr>
    <td width="50">&nbsp;</td>
    <td width="50">&nbsp;</td>
  </tr>
</table>
<br><br><br><br>
 
</body>
</html>


bruder 23-06-2008 00:10 832620

а кто будет для нижних колонок высоту задавать? поэтому и разные.

Qwe1 23-06-2008 00:21 832625

Нижние должны заливаться фоном и растягиваться вниз по содержимому. Если я укажу для них height="100%" в IE6 ничего не меняется, а в FF становится также не верно. Только в Опера по-прежнему отображает также.

Костэн 23-06-2008 00:54 832636

Qwe1, видимо в разных браузерах вывод новых строк с помощью тега <br> происходит по разному. Если применяется данный тег, то размеры таблицы ему поддаются, не смотря на строгость заданного значения.

Qwe1 23-06-2008 00:59 832639

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

bruder 23-06-2008 01:03 832640

растягивать таблицу неблагодарное дело. Потому что расчитывание высоты в таблице и дивах отличаются в корне. Поэтому помучившись люди рано или поздно переходят на дивы. Хотя во многих случаях таблица незаменима. Попробуйте растянуть таблицу на сто процентов а для столбца который должен рстягиватся вместе просто высоту большую чем 100

Код:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html><head><title>untitled document</title>
<meta http-equiv=content-type content="text/html; charset=utf-8">
<style type=text/css>
html {
        padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px; height: 100%
}
body {
        padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px; height: 100%
}
table {
        height: 100%
}
</style>

<meta content="mshtml 6.00.2900.5512" name=generator></head>
<body>
<table cellspacing=0 cellpadding=0 width="50%" align=center border=1>
  <tbody>
  <tr>
    <td width=50 height=100>1 </td>
    <td rowspan=2>2 </td>
    <td width=50 height=100>3 </td></tr>
  <tr>
    <td width=50 height=200>4 </td>
    <td width=50 height=200>5</td></tr></tbody></table></body></html>


Qwe1 23-06-2008 01:48 832653

Конкретно в этом примере все как надо, но мне 100% высота таблицы не нужна и с высотой растягивающейся ячейки не совсем то, что надо: невозможно точно знать какую выоту задавать, ведь если контента будет много, то высота в 200 не спасет (будет тоже самое), а если задать, к примеру, 500, то при малом кол-ве информации будет много места ну и т.д.
1) может быть, объединив боковые ячейки вертикально, вставить в в них по таблице с двумя строками? Первая (верхняя) ячейка будет фиксированная, вторая (нижняя) растягиваться вниз? Это возможно?
2) Тоже, что п.1, только вместо таблиц вставить два <div>, верхний фиксированный, нижний бы растягивался. Такое возможно? Как эту растяжку осуществить?

Костэн 23-06-2008 03:16 832672

Может быть это тебе хоть как то поможет :) Как закончишь наполнять их информацией, остаётся подравнять размеры до полной гармонии.

<table border=1 cellspacing=0 cellpadding=0 align=center>
<tr>
<td align=left>
<table border=1 align=center>
<tr>
<td>Левая колонка</td>
</tr>
</table>
</td>
<td align=center>
<table border=1 align=center>
<tr>
<td>Центральная колонка</td>
</tr>
</table>
</td>
<td align=right>
<table border=1 align=center>
<tr>
<td>Правая колонка</td>
</tr>
</table>
</td>
</tr>
</tr>
</table>


Время: 22:18.

Время: 22:18.
© OSzone.net 2001-