Jump to content
  • 0

Вопрос по IE


ageent
 Share

Question

Делаю простой резиновый макет. Не выходит установить ширину столбцов. Структура такая:

Шапка

Колонка Колонка Колонка

Подвал

Не могу зафиксить левую и правую колонку! Как решается даная проблема? Ответ дивами не предлагать, так как в макете куча разных тянущихся фонов. Которые можно было-бы очень легко сделать решив данную проблему.

Код прилагаю.

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>

<style type="text/css">
html, body{ height:100%;}
body {padding:0px;margin:0px;font:13px Arial, Helvetica, sans-serif; background:#c7eaff;}
</style>

<body>

<table width="100%" height="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td colspan="3" height="237" valign="top">
Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.
</td>
</tr>
<tr>
<td width="100">Эта колонка в ie не зафиксирована</td>
<td> </td>
<td width="100">Эта колонка в ie не зафиксирована</td>
</tr>
<tr>
<td colspan="3" height="150"> </td>
</tr>
</table>

</body>
</html>

Link to comment
Share on other sites

Recommended Posts

  • 0

хм, я смотрю вы никак не можете понять мою проблему :)

>Предлагаю скопировать выше преведенный мною код, вставить в файл с расширением htnl вдумчиво прочитать мой вопрос, а потом уже умничать.

если вы мне ссылку скинете на решение я вам памятник поставлю, ибо прежде чем сюда отписать я конечно провел поиск в сети.

Link to comment
Share on other sites

  • 0

А сделать так не пробовали?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>

<style type="text/css">
html, body{ height:100%;}
body {padding:0px;margin:0px;font:13px Arial, Helvetica, sans-serif; background:#c7eaff;}
</style>

<body>

<table width="100%" height="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td colspan="3" height="237" valign="top">
Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.Если мы уберем текст в ie колонки будут зафиксированны.
</td>
</tr>
<tr>
<td >Эта колонка в ie не зафиксирована</td>
<td width="100%"> </td>
<td width="100">Эта колонка в ie не зафиксирована</td>
</tr>
<tr>
<td colspan="3" height="150"> </td>
</tr>
</table>

</body>
</html>

Link to comment
Share on other sites

  • 0

Еще вопрос, как в данную ячуйку вставить div что-бы по высоте он был такой же как td ?

  <tr>
<td valign="top"><div class="p1" style="height:100%; background:#00F;">!!Сюда тыкаем див!!</div></td>
<td width="100%"> </td>
<td width="100">Эта колонка в ie не зафиксирована</td>
</tr>

Edited by ageent
Link to comment
Share on other sites

  • 0

Попробуй такой вариант:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
<style type="text/css">
html, body{ height:100%;}
body {padding:0px;margin:0px;font:13px Arial, Helvetica, sans-serif; background:#c7eaff;}
table { height: 100%; width: 100%;}

table th {}
#one { width: 300px; background: #009; height: 100%;}
#two { background: #F00; }
#three {width: 300px; background: #0F3;
/* Цвет фона второй колонки */
}
div { height: 100%; width: 100px; background: #960;}
</style>
</head>



<body>

<table>
<tr>
<th colspan="3">Header</th>
</tr>
<tr>
<td id="one"><div>Left2</div></td>
<td id="two">Center</td>
<td id="three">Right</td>
</tr>
<tr>
<th colspan="3">Footer</th>
</tr>
</table>

</body>
</html>

Link to comment
Share on other sites

  • 0

неа не работает, при увеличении header или footer макет увеличивается. Это легко по скролингу определить. высота ячейки выходит равна не высоте столбца td а высоте html, body

Edited by ageent
Link to comment
Share on other sites

  • 0

я хочу что-бы див был такой же по высоте как и td

в этом примере.

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>

<style type="text/css">
html, body{ height:100%;}
body {padding:0px;margin:0px;font:13px Arial, Helvetica, sans-serif; background:#c7eaff;}
</style>

<body>

<table width="100%" height="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td colspan="3" height="237" valign="top"></td>
</tr>
<tr>
<td width="100">Эта колонка в ie не зафиксирована</td>
<td valign="top" width="100%"><div class="p1" style="height:100%; background: #0FF">!!ВОТ ЭТОТ DIV по высоте должен быть таким же как и высота этой ячейки!!</div></td>
<td width="100">Эта колонка в ie не зафиксирована</td>
</tr>
<tr>
<td colspan="3" height="150"> </td>
</tr>
</table>

</body>
</html>

Edited by ageent
Link to comment
Share on other sites

  • 0

а от чего 100% то? вы как себе представляете 100%, если высота строки формируется исходя из контента, а у контента задана высота от еще неизвестной высоты ячейки?!

укажите ячейке с дивом высоту

Link to comment
Share on other sites

  • 0

Прошу вас, выкиньте ваш код, и вставьте мой, у меня прекрасно всё работает, а у вас нет

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
<style type="text/css">
html, body{ height:100%;}
body {padding:0px;margin:0px;font:13px Arial, Helvetica, sans-serif; background:#c7eaff;}
table { height: 100%; width: 100%;}

table th { height: 200px;}
#one { width: 300px; background: #009; height: 60%; position: relative;}
#two { background: #F00; }
#three {width: 300px; background: #0F3;
/* Цвет фона второй колонки */
}
div { height: 100%; width: 100px; background: #960;}

</style>
</head>



<body>


<table>
<tr>
<th colspan="3">Header</th>
</tr>
<tr>
<td id="one"><div>DIV LEFT</div></td>
<td id="two"><div>DIV CENTER</div></td>
<td id="three">Right</td>
</tr>
<tr>
<th colspan="3">Footer</th>
</tr>
</table>

</body>
</html>

Link to comment
Share on other sites

  • 0

ageent

Тоесть ты не можешь указать высоту ячейки, в которой лежит div?

Мы вам уже бытый час рассказываем, почему у вас не работает то, что вы хотите получить, а вы делаете по свойму и опять задаёте свой вопрос, вы издеваетесь? :)

Edited by psywalker
Link to comment
Share on other sites

  • 0

Это плохое решение ( не в обиду )

1. У нас всегда будут полосы прокрутки

2. Только что вы подогнали #one { width: 300px; background: #009; height: 60%; position: relative;} где height: 60%; если посмотреть на большом разрешении то мы увидим разрывы http://www.ageent.ru/demo/1.jpghttp://www.ageent.ru/demo/1.jpg, если же сделать height:100% то при открытии страницы мы просто не увидим footera http://www.ageent.ru/demo/2.jpg

или я не прав?

я просто хочу знать, есть ли реально работающее нормальное решении этой проблемы что-бы использовать это в будущем.

Link to comment
Share on other sites

  • 0

Всё, я понял, в чём дело, кажется проблема решается следующим образом:

1) Вы задаёте Таблице высоту 100%

2) Следовательно её высота, это экран

3) А сумма высоты ваших строк не равна 100%, и поэтому происходят такие разрывы, кстати помойму только в Опере

Решение: Шапка+Подвал= 40% + Контент(60%)= 100%

Нужно сделать сумму всех строк равной 100%, например так:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
<style type="text/css">
html, body{ height:100%;}
body {padding:0px;margin:0px;font:13px Arial, Helvetica, sans-serif; background:#c7eaff;}
table { height: 100%; width: 100%;}

table th { height: 20%;}
#one { width: 300px; background: #009; height: 60%;}
#two { background: #F00; height: 60%;}
#three {width: 300px; background: #0F3;height: 40%
/* Цвет фона второй колонки */
}
div { height: 100%; width: 100px; background: #960;}

</style>
</head>



<body>


<table>
<tr>
<th colspan="3">Header</th>
</tr>
<tr>
<td id="one"><div>DIV LEFT</div></td>
<td id="two"><div>DIV CENTER</div></td>
<td id="three">Right</td>
</tr>
<tr>
<th colspan="3">Footer</th>
</tr>
</table>

</body>
</html>

Edited by psywalker
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy