Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Таблица растягивается
 
 автор: Лена   (01.12.2009 в 13:05)   письмо автору
 
 

В Опере и Лисе - нормально, в ИЕ таблица почему-то растягивается по ширине за пределы окна.

<table width = "1000px" style = "background-color:#FFEED3;border-left:1px #C55FDA;display: block;border: 1px solid 

#7C0442;" align="center" valign="top" cellpadding="0" cellspacing="0" border="0" >
<tr><td colspan = "2">asdf</td>
<td colspan = "2">asdf</td>
<td colspan = "2">asdf</td>
</tr>
</table>

Что можно подправить, чтобы получилось?

  Ответить  
 
 автор: extonec   (01.12.2009 в 15:24)   письмо автору
 
   для: Лена   (01.12.2009 в 13:05)
 

попробовать убрать px из поля width="" либо перенести в style="" потому что если не ошибаюсь тег table изначально работает с px, мне проще написать чем попробовать так что пробуйте )

  Ответить  
 
 автор: АЯ   (01.12.2009 в 15:58)   письмо автору
 
   для: Лена   (01.12.2009 в 13:05)
 

Это вам показалось - в MSIE таблица не растягивается, в MSIE сама таблица точно такого же размера как и в прочих браузерах. А именно - 1000 пикселей.
Просто в MSIE в окне браузера справа всегда по умолчанию резервируется место для вертикального скроллбара, а в прочих браузерах скроллбар появляется только по необходимости.
Сделайте поведение скроллбара одинаковым во всех браузерах принудительно:
<body style="overflow: auto">

Но вообще ваша мысль "вписать таблицу с шириной 1000 пикселей в окно браузера" является не просто глупой, а дважды глупой:

Во-первых, если вы полагаете, что разрешение монитора у ВСЕХ пользователей точно такое же как и у вас - 1024 точки по ширине - то вы глубоко ошибаетесь. Мониторы могут иметь ЛЮБУЮ ширину - и меньшую, чем 1024 (тогда ваша таблица по-любому не впишется), и большую, чем 1024 (тогда на вашей странице по-любому будут иметься просветы по обеим сторонам таблицы, ибо у вас align="center").

Во-вторых, если вы лично не умеете управлять размерами окна своего браузера и всегда открываете его в режиме "Развернуть", то не думайте, что все прочие пользователи делают также. Пользователь может иметь не полностью развернутое окно и все ваши усилия элементарно пойдут прахом.


Ну и, наконец, HTML-код, представленный вами здесь, написан человеком, совершенно не понимающим - что и зачем он пишет.

  Ответить  
 
 автор: Лена   (01.12.2009 в 22:05)   письмо автору
 
   для: АЯ   (01.12.2009 в 15:58)
 

Спасибо за помощь.

>если вы полагаете, что разрешение монитора у ВСЕХ пользователей точно такое же как и у вас

Где я написала выше, что я так полагаю? Не делайте лишних выводов.

>если вы лично не умеете управлять размерами окна своего браузера и всегда открываете его в режиме "Развернуть", то не думайте, что все прочие пользователи делают также.

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

>Ну и, наконец, HTML-код, представленный вами здесь, написан человеком, совершенно не понимающим - что и зачем он пишет.

Это вы про двойное определение border? Заметила, спасибо. Или про colspan="2"? Так я здесь не всю таблицу привела, у меня ниже еще ячейки шли.
Или вы про то, что надо было все определять через CSS?
Если уже бросаетесь словами, то аргументируйте, пожалуйста, мистер гениальность.

  Ответить  
 
 автор: АЯ   (01.12.2009 в 22:47)   письмо автору
 
   для: Лена   (01.12.2009 в 22:05)
 

Аргументирую:
1. <table width = "1000px" - неверно,
следует писать так: <table width = "1000"
потому что в атрибуте WIDTH для тегов EMBED, FRAME, FRAMESET, IFRAME, OBJECT, TABLE, TD, TH, TR могут быть только два типа значений:
а) целое число (браузер интерпретирует его как число пикселей)
б) целое число с последующим символом процента

2. <table style = "border-left:1px #C55FDA; border: 1px solid #7C0442" - неверно
следует писать так: <table style = "border: 1px solid #7C0442; border-left:1px #C55FDA; "
потому что правила CSS для стилей выполняются ПОСЛЕДОВАТЕЛЬНО. Т.е. можно СНАЧАЛА установить всем четырём бордерам какой-то единый стиль (цвет, ширину), а ПОТОМ для одного из бордеров установить какой-то свой особый стиль (цвет, ширину).
Делать же наоборот: СНАЧАЛА для одного, а ПОТОМ - для всех, как это сделали вы - бессмысленно. Второе правило полностью аннулирует первое.

3. <table valign="top"> - неверно
потому что атрибут VALIGN не поддерживается тегом <TABLE>


Три грубые ошибки в одном теге - это, конечно, не рекорд.
Рекорд в своё время установила Екатерина II Великая, допустив в слове из трёх букв четыре ошибки - она написала "исчо" вместо "ещё".
Так что вам есть куда расти и к чему стремиться:-)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования