Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Проблема с разметкой (горизонтальны скролинг таблицы) / 17 сообщений из 17, страница 1 из 1
06.05.2009, 12:14
    #35971526
Alexandr Kononov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
Делаю небольшую страничку, содержащую три блока:
слева сверху фиксированный блок кнопок
справа сверху таблица с колонками фиксированной ширины, высотой равной блоку кнопок и по ширине занимающая все оставшееся свободное место в окне браузера
внизу таблица по ширине занимающая все оставшееся свободное место в окне браузера
Проблема в следующем:
Таблица, расположенная справа сверху в эксплорере и фоксе растягивается по ширине, пока не вместит все данные. В опере скролинг работает, но ширина столбцов минимальная. Эксплорер тоже забивает на ширину столбцов.
Перечитал множество примеров на эту тему, но ни один не помог. Може кто знает как это можно сделать?

PS Пример кода есть в приложенном файле

HTML:
Код: 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.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Untitled Document</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>

<body style="background-color:#666666">

<table width="100%">
	<tr>
    	<td style="width:450px; height:200px">
        <div style="width:450px">
            <table style="width:450px; height:100%; border:0px">
                  <tr>
                    <td colspan="2">
                        <span style="float:left;">
                            Информация<br/>
		   Еще информация
                        </span>
                    </td>
                  </tr>
                  <tr>
                    <td style="width:300px; height:80px">
                      <input type="button" value="Кнопка 1" style="width:300px; height:80px">
                    </td>
                    <td width="150px">
                      <table style="width:150px; height:80px">
                        <tr>
                          <td>
                            <input type="button" value="Кнопка 2" style="width:140px; height:40px">
                          </td>
                        </tr>
                        <tr>
                          <td>
                            <input type="button" value="Кнопка 3" style="width:140px; height:40px">
                          </td>
                        </tr>
                      </table>
                    </td>
                  </tr>
                  <tr>
                    <td colspan="2">
                       <input type="button" value="Кнопка 4" style="width:447px; height:40px">
                    </td>
                  </tr>
                </table>
            </div>
        </td>
    	<td class="scrollContent">
            <div class="tableContainer">
              <table style=" width:100%; height:100%">
                <tbody class="scrollContent">    
                    <tr class="scrollContent">          	 
                        <td class="scrollContent">
                            QWERTY
                        </td>            	 
		  
                        ... повторяется  10  раз ...

	              <td class="scrollContent">
                            QWERTY
                        </td>                                                            	 
                    </tr>
                    <tr class="scrollContent">
                        <td class="scrollContent">
                            QWERTY
                        </td> 
						
	           ... повторяется  10  раз ...
           	 
                        <td class="scrollContent">
                            QWERTY
                        </td>                                                            	 
                    </tr>
                    <tr class="scrollContent">
                        <td class="scrollContent"> 
                             123456            
                        </td>
                        
	           ... повторяется  10  раз ...
						
                        <td class="scrollContent"> 
                             123456            
                        </td>        
                    </tr>        
                    <tr class="scrollContent">
                        <td class="scrollContent">
                            QQQ- 123123 <br>
                            QQQ- 123123 <br>
                            QQQ- 123123 <br>
                            QQQ- 123123 <br>
                            QQQ- 123123 <br> 
                        </td>
                      
                      	... повторяется  10  раз ...
                       
                        <td class="scrollContent">
                            QQQ- 123123 <br>
                            QQQ- 123123 <br>
                            QQQ- 123123 <br>
                            QQQ- 123123 <br>
                            QQQ- 123123 <br>
                        </td>                                  
                    </tr>        
                </tbody>    
              </table>
            </div>
      </td>
    </tr>
</table>

<table class="mainTable">
   <tr>
      <td width="33%" valign="top">
         <h3 align="center" style="background-color:#999999">Первй столбец</h3>
         <table border="0" width="100%">
         </table>
      </td>

      <td width="33%" valign="top">
         <h3 align="center" style="background-color:#999999">Второй столбец</h3>
         <table border="0" width="100%">
         </table>
      </td>

      <td width="33%" valign="top">
         <h3 align="center" style="background-color:#999999">Третий столбец</h3>
         <table border="0" width="100%">
         </table>
      </td>
   </tr>
</table>

</body>
</html>

CSS:
Код: 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.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
/* CSS Document */
.mainTable {
	width: 100 %; 
	background-color:#CCCCCC; 
	border:0px;
} 

div.tableContainer {
	clear: both;
	border: 5px solid #BBB;
	height: 220px;
	overflow: auto;
	width: 100 %;
	height: 100 %;
}

html>body tbody.scrollContent {
	display: block;
	width: 100 %;
}

tbody.scrollContent td, tbody.scrollContent tr.normalRow td {
	background: #FFF;
             border: none;
	padding: 2px 3px 3px 4px;
}

tbody.scrollContent tr.alternateRow td {
	background:# 999999 ;
             border: none;
	padding: 2px 3px 3px 4px;
}


html>body tbody.scrollContent td {
	background:# 999999 ;
	width:100px;
	min-width:100px;	
}

html>body tbody.scrollContent td + td {
	background:# 999999 ;
	width:100px;
	min-width:100px;	
}

html>body tbody.scrollContent td + td + td {
	background:# 999999 ;
	width:100px;
	min-width:100px;
}
...
Рейтинг: 0 / 0
06.05.2009, 12:58
    #35971678
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
Что-то не понятна проблема... Что не так в примере? Как нужно?
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
06.05.2009, 13:01
    #35971688
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
Зачем например применять конструкции вида

Код: plaintext
1.
2.
3.
4.
<div style="width:450px">
   <table style="width:450px; height:100%; border:0px">
      ...
   </table>
</div>
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
06.05.2009, 13:06
    #35971702
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
Если есть проблемы с определением браузером ширины колонок, а это бывает с использованием

Код: plaintext
td colspan="2">

Проблему может решить тег col
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
06.05.2009, 14:08
    #35971903
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
макет писан на основе некоего примера из сети, реализующего таблицу с фиксированным заголовком и прокручиваемым содержимым. Как следствие - в нем много лишнего осталось от фиксирования шапки (я так понимаю из сабжа, что данный функционал не нужен?).

Я бы сделала так:
Код: 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.
36.
37.
38.
39.
40.
41.
42.
43.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Untitled Document</title>
<style>
.topTable { width: 100 %; table-layout:fixed; }
.mainTable { width: 100 %; background-color:#CCC; border:0px; } 
div.tableContainer { padding: 5px; background: #BBB; overflow: auto; width: 100 %; height: 100 %; }
table.scrollContent { table-layout:fixed; background:# 666 ; width:500px; }
table.scrollContent td { background:# 999999 ; width:100px; }
</style>
</head>

<body style="background-color:#666666">

<table class="topTable">
	<tr style="height:200px">
    	<td style="width:450px"><div style="width:100%">див с кнопками</div></td>
    	<td>
            <div class="tableContainer">
              <table class="scrollContent">
			     <tbody>    
                    <tr><td>QWERTY</td><td>QWERTY</td><td>QWERTY</td><td>QWERTY</td><td>QWERTY</td></tr>
                    <tr><td>QWERTY</td><td>QWERTY</td><td>QWERTY</td><td>QWERTY</td><td>QWERTY</td></tr>
                    <tr><td> 123456 </td><td> 123456 </td><td> 123456 </td><td> 123456 </td><td> 123456 </td></tr>        
                    <tr>
                        <td>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br></td>
                        <td>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br></td>
                        <td>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br></td>
                        <td>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br></td>
                        <td>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br>QQQ- 123123 <br></td>
                    </tr>        
                </tbody>    
              </table>
            </div>
      </td>
    </tr>
</table>

<table class="mainTable"><tr><td width="33%" valign="top">основная таблица</td></tr></table>

</body>
</html>

стиль table.scrollContent { width:500px; } добавлен исключительно ради моей домашней оперы, иначе она что-то непотребное выдает: таблица выводится скрученной в узкую горизонтальную трубочку, при разворачивании окна на весь экран - становится обычной таблицей, при восстановлении размеров окна - остается таблицей, при нажатии F5 - снова скручивается в трубочку... (какое получилось невольное продолжение вчерашней темы про браузеры. Ну не везет мне с оперой категорически :-( ). В принципе, если колонки фиксированные, то и ширину таблицы рассчитать нетрудно.

Такое Вы имели в виду или нет?
...
Рейтинг: 0 / 0
06.05.2009, 14:19
    #35971949
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
html>body tbody.scrollContent td + td
Впервые вижу такую конструкцию. Что означают выделенные фрагменты?
...
Рейтинг: 0 / 0
06.05.2009, 16:13
    #35972351
зы
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
http://www.google.ru/search?q=css+"%2B"+selector
хотя проще спросить, правда?
...
Рейтинг: 0 / 0
06.05.2009, 16:36
    #35972443
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
еще добавлю ссылку http://www.quirksmode.org/css/contents.html . Отсюда видно, почему эти конструкции чаще используются в хаках, чем просто так - это один из способов скрыть что-то от ИЕ.
...
Рейтинг: 0 / 0
06.05.2009, 16:48
    #35972495
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
illion, 404
зы сегодня не в духе, обходите стороной.
...
Рейтинг: 0 / 0
06.05.2009, 16:48
    #35972498
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
Не заметил лишнюю точку, работает.
...
Рейтинг: 0 / 0
06.05.2009, 17:04
    #35972572
Alexandr Kononov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
krvsaЗачем например применять конструкции вида

Код: plaintext
1.
2.
3.
4.
<div style="width:450px">
   <table style="width:450px; height:100%; border:0px">
      ...
   </table>
</div>

Да, div тут лишний.
...
Рейтинг: 0 / 0
06.05.2009, 17:18
    #35972638
Alexandr Kononov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
Antonariy html>body tbody.scrollContent td + td
Впервые вижу такую конструкцию. Что означают выделенные фрагменты?
я сам плохо понимаю что это
когда понял что не могу решить проблему сам полез искать примеры в инете и нашел практически то что мне нужно с такой кончтрукцией
но прикрутить нормально ее не получилось
...
Рейтинг: 0 / 0
06.05.2009, 17:43
    #35972718
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
illionеще добавлю ссылку http://www.quirksmode.org/css/contents.html. Отсюда видно, почему эти конструкции чаще используются в хаках, чем просто так - это один из способов скрыть что-то от ИЕ.
404 not found по тынцу. А эти всякие прибамбасы с селекторами в ИЕ8 тоже не работают?
...
Рейтинг: 0 / 0
06.05.2009, 18:44
    #35972876
зы
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
ShSerge
404 not found по тынцу.
учимся думать, стираем точку
...
Рейтинг: 0 / 0
06.05.2009, 18:57
    #35972904
Alexandr Kononov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
illion, это как раз то что нужно!
Всем спасобо за ответы.
...
Рейтинг: 0 / 0
06.05.2009, 20:58
    #35973040
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
зыучимся думать, стираем точку
Тьфуты. Ога, я криветко.
...
Рейтинг: 0 / 0
07.05.2009, 00:38
    #35973217
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с разметкой (горизонтальны скролинг таблицы)
ShSerge,Antonariy,зы,

прошу прощенья за ваше потраченное время из-за лишней точки. Погрешности оформления ссылок через //, буду теперь иметь в виду.
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Проблема с разметкой (горизонтальны скролинг таблицы) / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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