Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Ширина таблицы и столбца

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Что приоритетнее?
SergeantPEPPER
Отправлено: 12 Апреля, 2008 - 14:51:31
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Сент. 2007  
Откуда: Казань


Помог: 0 раз(а)




Народ, дайте мне кто-нибудь совет:

Я верстаю страницу второй раз в своей жизни. Опять столкнулся с надоедливой проблемой:
нужно, чтобы страница занимала 100% ширины окна браузера, но горизонтальной прокрутки не появлялось. Страница имеет табличную структуру, в главной таблице пишу width="100%", заетм во всех столбцах, которые должны быть динамически растянуты в зависимости от разрешения экрана тоже width="100%"...

Но вот когда появляется вложенность таблиц глубины 2-3 начинаются проблемы: страница начинает занимать больше, чем 100% и появляется гориз. скролл.

Например вот здесь у меня никак не фиксируется размер двух столбцов по бокам от главного текста (где width="9"):

CODE (text):
скопировать код в буфер обмена
  1. <html>
  2. <head><meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
  3. <title>sd fasad f</title>
  4. <link href="./taxnet.css" rel="stylesheet" type="text/css" />
  5. </head>
  6. <body>
  7. <table cellspacing="0" cellpadding="0" border="1" width="100%">
  8. <tr>
  9. <td class="filler_middle" colspan="3" height="33" width="100%"><marquee class="marquee_middle" behavior="scroll" direction="left"
  10.  
  11. color="#B80000">sdf sd sdf ads sdf sd!!!!!</marquee></td>
  12. </tr>
  13. <tr>
  14. <td colspan="3" height="10"><img src="./img/spacer.gif" /></td>
  15. </tr>
  16. <tr>
  17. <td rowspan="3" width="9"><img src="./img/spacer.gif" /></td>
  18. <td><center>
  19.     <table cellspacing="0" cellpadding="0" border="0">
  20.     <tr>
  21.     <td class="sign_middle" width="265" height="46"><center><div class="page_name">main</div></center></td>
  22.     </tr>
  23.     </table>
  24. </center></td>
  25. <td rowspan="3" width="9"><img src="./img/spacer.gif" /></td>
  26. </tr>
  27. <tr>
  28. <td><img src="./img/spacer.gif" /></td>
  29. </tr>
  30. <tr>
  31. <td>
  32.     <table cellspacing="0" cellpadding="0" border="0">
  33.     <tr>
  34.     <td class="section_name">12.01.08</td>
  35.     </tr>
  36.     <tr>
  37.     <td class="section_name">sad fsd f<br /><br /></td>
  38.     </tr>
  39.     <tr>
  40.     <td>sdfas dfsfa sdfsad vxcvxzcvas afsf asdv sadv sav sdv sdasg afdg asva asfasdf asdf sdafasd asfasdfsad fasdf asdfafwef aasd </td>
  41.     </tr>
  42.     </table>
  43. </td>
  44. </tr>
  45. </table>
  46. </body>
  47. </html>


Скажите, в чем моя ошибка и как употреблять атрибут width грамотно...
 
 Top
Eihwaz
Отправлено: 12 Апреля, 2008 - 15:01:42
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




Я бы немного по-другому строил структуру таблицы. (опять же, чтобы не получать на выходе одну огромную таблицу с кучей маленьких в ней).
Смотри, у тебя есть шапка с бегущей этой строкой (бегущую строку я не делаю):
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <table width="100%">
  3. <tr>
  4. <td>Здесь - бегущая строка</td>
  5. </tr>
  6. <tr>
  7. <td> Здесь в оригинале слева был рисунок</td>
  8. </tr>
  9. </table>
  10.  

Дальше у нас фнукциональная часть - одна таблица с парой вложенных:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <table width="100%">
  3. <tr>
  4. <td><img src="тра-ля-ля" hspace="0" vspace="0" border="0"></td>
  5. </tr>
  6. <tr>
  7. <td width="100%">Здесь - вкладываем таблицы с основным содержимым</td>
  8. </tr>
  9. <tr>
  10. <td><img src="тра-ля-ля" hspace="0" vspace="0" border="0"></td>
  11. </tr>
  12. </table>
  13.  

Ну и дальше - "подвал" страницы...
 
 Top
SergeantPEPPER
Отправлено: 12 Апреля, 2008 - 15:12:28
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Сент. 2007  
Откуда: Казань


Помог: 0 раз(а)




НУ я наверное соглашусь, эта версия проще и понятнее,

но мне все-таки интересно, почему это на деле получаются такие финты, когда прописанная в столбце width="9" никак не влияет на отображение страницы. Я так ставил width="20" - изменений никаких - следовательно средний столбец с width="100%" съедает всю ширину...

А почему?!?! Не понял

По каким правлилам это все работает?

Eihwaz , я такой привередливый, потому что приведенный html-код - это всего лишь фрагмент от общей страницы Улыбка А в ней у меня тоже есть проблемы, но уже с горизонтальным скроллом. Так что проблема очень актуальная.

На самом деле я уже делал ранее одну страницу - там у меня были такие же проблемы, которые я в конце концов разрешил методом тыка - мудился ОЧЕНЬ долго. Ну а теперь вот хочется взять какой-нибудь принцип верстки за правило и больше не мучиться с подобными проблемами.
 
 Top
Eihwaz
Отправлено: 12 Апреля, 2008 - 15:25:03
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




Скорее всего, неправильно указан путь к картинке, которая должна отображаться в ячейке, у которой щирина проставлена в 9 пикселей. Если ячейка пуста, то она не отображается. Вернее, отображается (в исходнике страницы она есть), но ее ширина "съедается" ячейкой, ширина которой 100% Т.е., если поставить в той ячейке что-угодно, хоть пробел - &nbsp; , то она отобразится. В этом случа скорее всего все-таки неправильно указан путь к картинке.
 
 Top
SergeantPEPPER
Отправлено: 12 Апреля, 2008 - 15:28:03
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Сент. 2007  
Откуда: Казань


Помог: 0 раз(а)




Жалко, не сказал сразу...

Путь к картинке указан правильно, но эта картинка есть - spacer (ну тот самый невидимый пиксел размером 1х1).

Так что же получается width="9" не имеет вообще никакого значения, если есть сосед с width="100%" ???
 
 Top
Eihwaz
Отправлено: 12 Апреля, 2008 - 15:31:07
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




Имеет, если она не пустая Улыбка Если spacer отобразился, то "съедать" не может, должно быть все нормально...
Кстати, в средней ячейке можно просто не указывать ширину вовсе, если ширина двух соседних указана, тогда все будет отображаться.

(Отредактировано автором: 12 Апреля, 2008 - 15:34:34)

 
 Top
SergeantPEPPER
Отправлено: 12 Апреля, 2008 - 15:36:25
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Сент. 2007  
Откуда: Казань


Помог: 0 раз(а)




Да?
Ну тогда это наверное прозвучит странно: съедает, да еще как... в столбце с шириной 9 отобрадается рисунок шириной 1 пиксел и на этом столбец у меня заканчивается...

Однако

Да и вообще, даже если поступать сложно, как это делаю я, то ведь все равно есть какой-то алгоритм, по которому браузер определяет ширину этих столбцов и таблиц, выводимых на экран, следовательно нужно взять что-то за правило и этим пользоваться всегда... Разве нет?
 
 Top
Eihwaz
Отправлено: 12 Апреля, 2008 - 15:39:47
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




И тем не менее, как говорится: Улыбка
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <style>
  3. .cell_center
  4. {
  5.     border: 1px dotted #666666;
  6.     background-color: gray;
  7. }
  8. .cell_sides
  9. {
  10.     border: 1px dotted #666666;
  11.     background-color: red;
  12. }
  13. </style>
  14. <table width="100%" cellspacing="0" cellpadding="0">
  15. <tr>
  16. <td class="cell_sides" width="1"></td>
  17. <td class="cell_center">&nbsp;</td>
  18. <td class="cell_sides" width="1"></td>
  19. </tr>
  20. </table>
  21.  
 
 Top
SergeantPEPPER
Отправлено: 12 Апреля, 2008 - 15:48:06
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Сент. 2007  
Откуда: Казань


Помог: 0 раз(а)




Да нет, я понимаю что это будет хорошо работать, но у меня проблема в том, что столбец должен быть шириной 9, а он отображается шириной 1... Растерялся

(Отредактировано автором: 12 Апреля, 2008 - 16:05:13)

 
 Top
Eihwaz
Отправлено: 12 Апреля, 2008 - 16:14:32
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




Ну, правильно, к HTML я указал ему ширину в 1 пиксель, укажи в 9 - будет в 9 Улыбка
 
 Top
SergeantPEPPER
Отправлено: 12 Апреля, 2008 - 16:20:27
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Сент. 2007  
Откуда: Казань


Помог: 0 раз(а)




****************************

Просто потрясающе... Оказалось, что все портил самый верхний столбец с width="100%" и colspan="3". КАК ?????? Как он сказывается на все нижележащее Нахмурился

Я для наглядности сделал иллюстрацию даже...
(прикрепил к ответу)

Благо сражение выиграно, но победа во всей войнае еще не близко Улыбка
Прикреплено изображение (Нажмите для увеличения)
illustr.jpg
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTML, Дизайн & CSS »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB