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

HTML+CSS+JavaScript

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: рамка таблицы

Сообщения:  [1-10]   [11-15] 

 
 автор: sl1p   (26.11.2008 в 21:30)   письмо автору
 
   для: Mr.Crot   (26.11.2008 в 21:10)
 

Все действительно работает, но нужно изменить не заливку ячейки, а ее рамку.
> автор: sl1p (26.11.2008 в 18:12)

Еще хотел заметить, что в первом передложенном варианте содержимое ячейки прыгает и скачет.
Ну а логически нельзя подумать? Почему все так любят что бы чтото делали за них:)
Просто изначально сделать у ячеек либо padding либо margin с размерами будующего бордера.

Считайте работу за вас главную проделали уже, причём в пятистах вариантах. Вам осталось лишь прописать всего-навсего стили.

зы. То что вы показали на скрине, лучше делать на списках(ul,li), или на ссылках. Таблица здесь будет не в тему, имхо.

  Ответить  
 
 автор: Mr.Crot   (26.11.2008 в 21:10)   письмо автору
15 Кб
 
   для: Mr.Crot   (26.11.2008 в 04:31)
 

Все действительно работает, но нужно изменить не заливку ячейки, а ее рамку. А заливкой будет служить общий background-image, для каждой ячейки отдельно.
Еще хотел заметить, что в первом передложенном варианте содержимое ячейки прыгает и скачет. Сейчас пока некогда, но нужно добиться идеального представления, что получиться отпишу

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

  Ответить  
 
 автор: mikha   (26.11.2008 в 18:35)   письмо автору
 
   для: sl1p   (26.11.2008 в 18:30)
 

Просто я подумал что есть более краткий вариант со свойствами rows и cells.
Против вашего варианта ничего не имею против)))

  Ответить  
 
 автор: sl1p   (26.11.2008 в 18:30)   письмо автору
 
   для: mikha   (26.11.2008 в 18:27)
 

а зачем не считать нашего варианта?:)

  Ответить  
 
 автор: mikha   (26.11.2008 в 18:27)   письмо автору
 
   для: sl1p   (26.11.2008 в 18:18)
 

Попалось на глаза вот это

Interface HTMLTableElement
Свойство rows, возвращает коллекцию узлов строк таблицы, readonly.

Interface HTMLTableRowElement
Свойство cells, возвращает коллекцию узлов ячеек для строки, readonly.

Решил попробовать.
А как надо было?
Если не считать вашего варианта.

  Ответить  
 
 автор: mikha   (26.11.2008 в 18:19)   письмо автору
 
   для: sl1p   (26.11.2008 в 18:12)
 

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

  Ответить  
 
 автор: sl1p   (26.11.2008 в 18:18)   письмо автору
 
   для: mikha   (26.11.2008 в 18:00)
 

и вообще зачем у вас присутствует выдирание TR?
всё равно все TD будут засчитаны и обработаны:)

  Ответить  
 
 автор: sl1p   (26.11.2008 в 18:12)   письмо автору
 
   для: mikha   (26.11.2008 в 18:00)
 

не работало ибо я пропустил оператор, писал в слепую так сказать, без проверки:)
теперь работает:
<style type="text/css"> 
#table td:hover, #table td.hover{ 
    border: 2px solid #FF0000; 

</style>

<script type="text/javascript">
function tdHover() {
var els = document.getElementById("table").getElementsByTagName("td");
for(var i=0, len=els.length; i<len; i++) {
            els[i].onmouseover=function() { this.className="hover"; }
            els[i].onmouseout=function() { this.className=""; }
        }
}
if (window.attachEvent && navigator.userAgent.indexOf("Opera")==-1) window.attachEvent("onload", tdHover);
</script>

<table width="400" id="table">
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    <td>4</td>
  </tr>
</table>

зы. мой вариант лучше:) так как требует жс только у кривых ие:)

  Ответить  
 
 автор: mikha   (26.11.2008 в 18:00)   письмо автору
 
   для: mikha   (26.11.2008 в 17:45)
 

Тоже работал над подобным вариантом.
Не знал как вот это
els[i].onmouseover=function() { this.className="hover"; } 
els[i].onmouseout=function() { this.className="" }

Сделать. Но благодаря вам..
Вот, работает вроде везде.
<style type="text/css"> 
<!-- 
.vvv {
    background-color: #FF0000;
}
--> 
</style>
<body>
<script type="text/javascript">
<!--
function tdClass() {
    var tbl = document.getElementById("tableId");
    var num_tr = tbl.rows.length;
    for(var i=0; i < num_tr; i++) {
        var num_td = tbl.rows[i].cells.length;
        for(var j=0; j < num_td; j++) {
            tbl.rows[i].cells[j].onmouseover=function() { this.className="vvv"; } 
            tbl.rows[i].cells[j].onmouseout=function() { this.className="" } 
        }
    }
}
//-->
</script>
<table width="400" id="tableId" onMouseOver="tdClass();">
  <TR>
    <TD>1</TD>
    <TD>2</TD>
  </TR>
  <TR>
    <TD>3</TD>
    <TD>4</TD>
  </TR>
</TABLE>

  Ответить  
 
 автор: mikha   (26.11.2008 в 17:45)   письмо автору
 
   для: sl1p   (26.11.2008 в 17:27)
 

В IE6 и MyIE не работает.

  Ответить  

Сообщения:  [1-10]   [11-15] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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