Artiom Опубликовано 24 февраля, 2007 Жалоба Поделиться Опубликовано 24 февраля, 2007 Привет всем! Короче такой трабл, есть ОГРОМНАЯ таблица, мне нужно выделить цветом каждую вторую строчку, как это сделать не вручную, а то получается слишком долго! Ссылка на комментарий Поделиться на другие сайты Поделиться
Darhazer Опубликовано 24 февраля, 2007 Жалоба Поделиться Опубликовано 24 февраля, 2007 Пока ответ JavaScript <script language="JavaScript" type="text/javascript">window.onload = colorRows;function colorRows() { var myTR = document.getElementsByTagName('tr'); for (var i=0;i<myTR.length;i++) { if (i%2) { myTR[i].className = 'rowTint'; } }}</script> конечно надо в .css добавить стил .rowTing Пока ответ JavaScript (возможно в следущей версии CSS будет и лучший вариант) <script language="JavaScript" type="text/javascript">window.onload = colorRows;function colorRows() { var myTR = document.getElementsByTagName('tr'); for (var i=0;i<myTR.length;i++) { if (i%2) { myTR[i].className = 'rowTint'; } }}</script> конечно надо в .css добавить стил .rowTing Ссылка на комментарий Поделиться на другие сайты Поделиться
Jmd Опубликовано 25 февраля, 2007 Жалоба Поделиться Опубликовано 25 февраля, 2007 Excel? тогда самое простое - полуавтоматически Красишь вторую строку, как хочешь, тени, рамки и все остольное.... Выделяешь 2 строки, нажимаешь ctl+C, Ставишь курсор на 3-ю строку (выделяешь ее) нажимаешь ctl+shift+end (выделяешь таблицу до конца) Затем в контекстном меню выбираешь "Специальная вставка" там ставишь "Формат". "Ок" Все, наслаждайся раскраской. Ссылка на комментарий Поделиться на другие сайты Поделиться
Artiom Опубликовано 25 февраля, 2007 Автор Жалоба Поделиться Опубликовано 25 февраля, 2007 :) Darhazer А вот ещё один вопросик: как сделать так, чтоб строки начинали окрашиваться не с первой а со второй? А за предыдущий ответ, огромное Спасибо! :) ;) Jmd Excel?... Ты просто невтемщик!!!, читать умеешь? ИНТЕРНЕТ>ВЕБ-СТРОИТЕЛЬСТВО!!! Darhazer Поправка, я имею ввиду, чтоб все полосы были окрашены, тоесть первая одного цвета, вторая второго, третья первого... можно ли? пробовал, вставить второй скрипт, переименовать функцию, и добавить mytr[i+1][/b], но тогда получается, что первая функция не работает... Всёёёё, получилось, в ответе больше не нуждаюсь, если кому надо выкладываю скрипт но уже с поправочкой: <script language="JavaScript" type="text/javascript">window.onload = colorRows; function colorRows() { var myTR = document.getElementsByTagName('tr'); for (var i=0;i<myTR.length;i++) { if (i%2) { myTR[i].className = 'rowTint'; myTR[i+1].className = 'rowTint1'; } }}</script><style>.rowTint { background-color: #999999; }.rowTint1 { background-color: #999900; }</style> :D Ссылка на комментарий Поделиться на другие сайты Поделиться
Artiom Опубликовано 25 февраля, 2007 Автор Жалоба Поделиться Опубликовано 25 февраля, 2007 В ходе работы возник ещё один вопросик, как сделать так, чтоб этот скрипт не распространялся на остальные таблицы? А то у меня получается, что все таблицы полосатые :sm(100): Ссылка на комментарий Поделиться на другие сайты Поделиться
Darhazer Опубликовано 25 февраля, 2007 Жалоба Поделиться Опубликовано 25 февраля, 2007 (изменено) Насчет первого вопроса if (i%2) { myTR[i].className = 'rowTint'; } else { myTR[i].className = 'rowTint1';} насчет второго - завтро проверю К стате возможно сделать через CSS rowTint и rowTint1 чтоб выполнялись только под конкретной таблице Таблица которую хочем окрасить <table class="myTable"> CSS: <style>table.myTable tr.rowTint { background-color: #999999; }table.myTable tr.rowTint1 { background-color: #999900; }</style> Изменено 25 февраля, 2007 пользователем Darhazer Ссылка на комментарий Поделиться на другие сайты Поделиться
Darhazer Опубликовано 26 февраля, 2007 Жалоба Поделиться Опубликовано 26 февраля, 2007 Отредактировал так чтоб работало для конкретной таблице: <html><head><script language="JavaScript" type="text/javascript">window.onload = colorRows;function colorRows() { var myTable = document.getElementById('myTable'); var myTR = myTable.getElementsByTagName('tr'); for (var i=0;i<myTR.length;i++) { if (i%2) { myTR[i].className = 'rowTint'; } else { myTR[i].className = 'rowTint1'; } }}</script><style>.rowTint { background-color: #999999; }.rowTint1 { background-color: #999900; }</style></head><body><table width="400" id="myTable"><tr><td>1</td></tr><tr><td>2</td></tr><tr><td>3</td></tr><tr><td>4</td></tr><tr><td>5</td></tr></table><br><table width="400"><tr><td>1</td></tr><tr><td>2</td></tr><tr><td>3</td></tr><tr><td>4</td></tr><tr><td>5</td></tr><tr><td>6</td></tr></table></body> Ссылка на комментарий Поделиться на другие сайты Поделиться
Artiom Опубликовано 26 февраля, 2007 Автор Жалоба Поделиться Опубликовано 26 февраля, 2007 Darhazer Ещё раз спасибо. P.S. Насчет первого вопросаКодif (i%2) { myTR[i].className = 'rowTint'; } else { myTR[i].className = 'rowTint1';} Кстати с else не работает. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти