powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Простейшая таблица: в IE8 неверно отображает
13 сообщений из 13, страница 1 из 1
Простейшая таблица: в IE8 неверно отображает
    #36658555
Alexvmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет! У меня проблема. Устал уже думать, почему так все.
Лазил на форуме - ничего не нашел путного.
Описание ситуации:
Есть xhtml документ. В нем отображается простейшая таблица с двумя столбцами и двумя строками, первый столбец высотой 100px и шириной 50px объединяет две строки. Второй столбец высотой 8px имеет красный фон. Для наглядности установил видимым бордер у всех ячеек.
Вот код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
<!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>
 <style type="text/css">
   .body-table { 
     width: 100 %; 
	 border: 1px dotted black;
   }
   
   .body-table td
   {
		border: 1px dotted black;
   }
  </style>

</head>
<body>
<table class="body-table">
	<tr>
	    <td rowspan="2" style="height:100px; width:50px;">
		</td>
		<td style="height:8px; background-color: red">
		</td>
	</tr>
	<tr>
		<td>
		</td> 
	</tr>
</table>
</body>
</html>
Вопрос: почему во всех браузерах высоту красной строки правильно отображает 8px, а в IE8 неверно, очень высокую отображает, раз в 10 больше, чем 8px ?
Верно отображает в: Mozilla Firefox 3.5.7, Opera 10.53, Google Chrome 3.0.195.21.
Неверно отображает в: Internet Explorer 8 (8.0.601.18702)
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36658573
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что rowspan и неизвестная высота таблицы. Нужно задавать либо высоту таблицы, либо всех строк явно.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36658592
Alexvmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyПотому что rowspan и неизвестная высота таблицы. Нужно задавать либо высоту таблицы, либо всех строк явно.
спс, получилось.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36658728
Alexvmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А почему, если я указываю высоту высоту таблицы и при этом высоту ячейки (rowspan = 2), то опять все слетает. В rowspan ячейку я рисунок хочу запихнуть, высоту нужно указывать. Не понимаю, в чем смысл? я указал высоту таблицы и ячейки, почему все слетает? Если у rowspan ячейкм убрать height:102px, то все ок становится с красной ячейкой, но мне нужно указать и для rowspan высоту.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
<!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>
 <style type="text/css">
	.cap-table
	{
		width: 100 %; 
		height:102px; 
		border-collapse: collapse;
	}

	.cap-table td
	{
		border: 1px dotted black;
	}
  </style>
</head>
<body>
<table class="cap-table">
	<tr style="">
		<td rowspan="2" style="width: 130px; height:102px;">
		</td>
		<td style="width:5%;">
		</td>
		<td style="width:85%; height:8px; background-color: Red;">
		</td>
	</tr>
	<tr>
		<td colspan="2" style="">
		</td> 
	</tr>
</table>
</body>
</html>
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36658829
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я не понимаю, в чем смысл задавать высоту у таблицы и спаненой ячейки. Тем более, что они не будут равны из-за border и cellspacing.

Не умеет ie считать высоту и ширину спаненых ячеек. Нужно задавать размеры неспаненых, а общую высоту/ширину — у таблицы. Тогда все будет в порядке.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36658832
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexvmkВ rowspan ячейку я рисунок хочу запихнуть, высоту нужно указывать.
Для этого не обязательно таблицей мутить... Сделай на ДИВах две колонки "лево" и "право". В левой будет рисунок, а в правой та же табличка...

Как вариант вот так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
<html>
<head>
<style type="text/css">
.body-table {
	width:  100 %;
	height: 100px;
	border: 1px dotted black;
}
.body-table td {
	border: 1px dotted black;
}
#left {
	 width: 50px;
}
#right {
	height: 8px; 
	overflow: hidden; 
	background-color: red;s
}
</style>
</head>
<body>
<table class="body-table">
	<tr>
	    <td id='left' rowspan="2">
		</td>
		<td id='right'>
		</td>
	</tr>
	<tr>
		<td>
		</td> 
	</tr>
</table>
</body>
</html>

Работает в ИЕ6.0, Опере и ФФ...
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36658850
Alexvmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyА я не понимаю, в чем смысл задавать высоту у таблицы и спаненой ячейки. Тем более, что они не будут равны из-за border и cellspacing.

Не умеет ie считать высоту и ширину спаненых ячеек. Нужно задавать размеры неспаненых, а общую высоту/ширину — у таблицы. Тогда все будет в порядке.
Спасибо, Ваши мысли понятны. Сейчас все сделал. Все ок.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36658856
Alexvmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsaAlexvmkВ rowspan ячейку я рисунок хочу запихнуть, высоту нужно указывать.
Для этого не обязательно таблицей мутить... Сделай на ДИВах две колонки "лево" и "право". В левой будет рисунок, а в правой та же табличка...

Как вариант вот так

Работает в ИЕ6.0, Опере и ФФ...
Учту. Пока и с таблой сделал.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36661922
Alexvmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
теперь такая трабла:
такой текст:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
 <table style="height:100%; border: 1px dotted black;">
	<tr>
		<td style="height:100%; vertical-align:middle;">
		sdf1
		</td>
	</tr>
</table>
</body>
</html>
все верно отображает - растягивает колонку таблицы на всю высоту документа.
А если установить тип документа, то не расстягивает по высоте на 100%, просто колонку рисует в левом верхнем углу:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<!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>
</head>
<body>
 <table style="height:100%; border: 1px dotted black;">
	<tr>
		<td style="height:100%; vertical-align:middle;">
		sdf1
		</td>
	</tr>
</table>
</body>
</html>

Почему так?
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36662010
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это как-то связано с правилами вычисления относительных размеров для этого доктайпа.
Добавь таблице position:absolute и будет щастие.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36662027
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только не забудь в body добавить topmargin="0" и bottommargin="0" и убрать у таблицы border, иначе появится скролл.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36662053
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тц1 и тц2 по теме.
...
Рейтинг: 0 / 0
Простейшая таблица: в IE8 неверно отображает
    #36662054
Alexvmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyЭто как-то связано с правилами вычисления относительных размеров для этого доктайпа.
Добавь таблице position:absolute и будет щастие.
Не, ну я так не могу делать.
У меня документ то вообще другой. Я просто упростил все. наткнулся на такое и ваще не понял((
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Простейшая таблица: в IE8 неверно отображает
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]