Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Создание таблицы

Ответить
Настройки темы
Создание таблицы

(*.*)


Сообщения: 36498
Благодарности: 6676


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Доброго времени суток!

Озадачился я вопросом о создании таблицы с чередующимся фоном строк. Допустим я задаю фон каждой строки через <tr bgcolor="mycolor">. Однако, если мне надо вставить одну строку в середину таблицы, то вся последовательность фонов сбивается. Менять вручную как-то неправильно кажется, и наверняка существует решение задачи, о котором мне пока неизвестно. Может фон надо как-то иначе задавать? Подскажете?

Спасибо за внимание.

[s]Исправлено: Vadikan, 8:56 23-10-2004[/s]

-------
Канал Windows 11, etc | Чат @winsiders


Отправлено: 08:55, 23-10-2004

 

Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


к сожалению телепаты не вернулись еще из отпуска
В какой проге рисуем таблицы?
В обычных html редакторах это возможно с применением скриптования (если сие возможно), иначе никак, можно поискать специализированные тулзы для таблиц, IMHO!

Отправлено: 12:18, 23-10-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Можно ещё с помощью CSS
Для всех TR задать в таблице стилей один цвет
А для исключений сделать свой ID, и вставлять его там, где нужен отличный от стандартного цвет
То есть это всё примерно так будет выглядить:
Код: Выделить весь код
<tr></tr> - здесь будет стандартный цвет
<tr id=other_color></tr> - а здесь НЕстандартный

-------
Fortes fortuna adiuvat


Отправлено: 12:52, 23-10-2004 | #3


Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


vadimiron
И чем это отличается от bgcolor='mycolor' ?

Отправлено: 15:00, 23-10-2004 | #4

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


если страница не статическая, то генерить id с прибавлением 1 и дальше всем td с четным id назначить один цвет, с нечетным - другой (вызывая соответствующую функция bp <bоdy onLoad"=функция()">
Если статика - хуже. Можно все-таки попробовать генерировать id строчек атоматически (например, задействовав какую-то JavaScript переменную и загоняя туда id=эта переменная ++), а дальше, как выше, но сдается мне, что эта самая JavaScript-овская генерация не такой простой зверь, как кажется =(

Отправлено: 15:44, 23-10-2004 | #5


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


archy
Так в этом то и есть смысл CSS, например у меня 100 ячеек, и вдруг захотелось изменить у них bgcolor, тогда я вместо того, что руками меняю у каждой ячейки bgcolor='mycolor', просто лезу в файл со стилями и изменяю всего один параметр и всё
Это намного удобней и более читабельно

-------
Fortes fortuna adiuvat


Отправлено: 15:45, 23-10-2004 | #6

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


я тут еще подумала (насчет автоматического генерации id для статических таблиц) - может быть проще будет воспользоваться id таблицы и поиграть свойствами firstchild и т.д. (но только для броузеров, понимающих DOM)

vadimiron
проблема в том, что, судя по всему, Вад хочет создать табличку (строк эдак на полтораста, а потом вставить туда строку, скажем между 75 и 76-ой (раздвинуть ряды) и не хочет переписывать не свойства, ни id у всех рядов с 77 по 150)

Отправлено: 16:00, 23-10-2004 | #7


Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


vadimiron
Ту не внимательно прочитал вопрос видимо
mar
может Javascript пробежаться по всей таблице (<tr> и разукрасить ее как надо? Или мы об одном и том же?
/me погряз в скриптовании...

Отправлено: 16:40, 23-10-2004 | #8

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


archy
об одном

придумала (только это для броузеров, поддерживающих DOM):
Код: Выделить весь код
 
<html> 
<head> 
<title>test</title> 
<script> 
<!-- 
  function color_trs() { 
 
var table = document.getElementById("t"); 
 
var trs = table.getElementsByTagName("tr"); 
var count = trs.length; 
for (var i = 0; i < count; i++) { 
if (Math.round(i/2) == (i/2) ) 
trs[i].style.backgroundColor="blue"; 
else 
trs[i].style.backgroundColor="yellow"; 
}         
 
 } 
 // --> 
</script> 
</head> 
<BODY onLoad="color_trs();"> 
 
<table id="t" border="5"> 
<tr><td>1</td><td>2</td></tr> 
<tr><td>4</td><td>5</td></tr> 
        <tr><td>7</td><td>6</td></tr> 
<tr><td>8</td><td>9</td></tr> 
<tr><td>10</td><td>11</td></tr> 
</table> 
 
</body> 
</html>
результат можно глянуть тут

Добавлено:

вот та же функция, но работающая для всех таблиц документа:
Код: Выделить весь код
  function color_trs() { 
         
        var trs, trs_count, j; 
        // массив элементов с именем тега table 
       var tables = document.getElementsByTagName("table"); 
      var tables_count = tables.length; 
      for (var i = 0; i < tables_count; i++) { // для каждой таблицы 
        // массив элементов с именем тега tr 
        trs = tables[i].getElementsByTagName("tr"); 
        trs_count = 0; 
        trs_count = trs.length; 
        for (j = 0; j < trs_count; j++) { // для каждой строки 
                       // назначаем четным и нечетным разные цвета фона 
                     if (Math.round(j/2) == (j/2) ) 
             trs[j].style.backgroundColor="blue"; 
                    else 
trs[j].style.backgroundColor="yellow"; 
        }         
    } 
 }
пример можно посмотреть тут

(что-то какая-то ерунда с форматированием кода, ну да ладно - желающие могут брать его из примеров)

[s]Исправлено: mar, 18:05 23-10-2004[/s]

Отправлено: 16:49, 23-10-2004 | #9


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


мне тоже очень интересен этот вопрос тоже очень интересен, но вот а если браузер не поддерживает дом и если не хочентся это прописывать в ПХП скриптах?

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 20:47, 23-10-2004 | #10



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Создание таблицы

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Mysql, оптимизация таблицы (создание индексов) ivank Вебмастеру 7 07-03-2007 17:47
Создание и заполнение таблицы StringGrid в Делфи Bronko Программирование и базы данных 2 22-09-2006 13:41
Таблицы swine Вебмастеру 11 08-05-2004 18:25
Таблицы в ДЕЛФИ Limon Программирование и базы данных 4 20-09-2002 15:13




 
Переход