wersja skryptu MyBB: 1.6.3
adres forum: -
na czym polega problem (screen, opis, komunikaty, nazwa stylu/theme/szablonu):
Siema.
Chciałbym żeby w moim stylu było tak, że po nasunięciu kursora na dowolną część opisu działu podświetlało cały jego opis (ikonka, opis, liczba postów i wątków, ostatni post).
Zrobiłem to tak:
Kod:
.trow1:hover { background: #kolor; }
.trow2:hover { background: #kolor; }
Ale i tak nie podświetla całej linijki tylko jedną komórkę.
Coś w tym rodzaju:
Próbowałem też
sposobu z mybb.com, ale nie działa.
Czyli powinienem dodać do cssa:
Kod:
.customhover {
background: original bg color;
}
table.tborder tr:hover td.customhover {
background: hover bg color;
}
I pozmieniać {$bgcolor} na customhover w kilku szablonach. Ale jak tak robię to się w ogóle nie podświetla.
Jakieś pomysły?
Zakładam, że masz zmienioną zmienną
{$bgcolor} na klasę
customhover.
Spróbuj:
Kod:
tr.customhover {
background: #kolor;
}
tr.customhover:hover {
background: #kolor_podświetlenia;
}
Nie testowałem - powinno działać.
P.S. Pamiętaj o przystosowaniu szablonów do kodu CSS: wywalić klasy w
td, dodać klasę w
tr.
forumbit_depth2_cat
Kod:
<tr class="trow1f">
<td class="customhover" align="center" valign="top" width="1"><img src="{$theme['imgdir']}/{$lightbulb['folder']}.gif" alt="{$lightbulb['altonoff']}" title="{$lightbulb['altonoff']}" class="ajax_mark_read" id="mark_read_{$forum['fid']}" /></td>
<td class="customhover" valign="top">
<strong><a href="{$forum_url}">{$forum['name']}</a></strong>{$forum_viewers_text}<div class="smalltext">{$forum['description']}{$subforums}</div>
</td>
<td class="customhover" valign="top" align="center" style="white-space: nowrap"><div class="smalltext">Wątków: {$threads}{$unapproved['unapproved_threads']}<br>Postów: {$posts}{$unapproved['unapproved_posts']}</div></td>
<td class="customhover" valign="top" align="right" style="white-space: nowrap">{$lastpost}</td>
</tr>
I nie działa, nie zrozumiałem tylko o co chodzi z tymi klasami
Czystym CSSem raczej nie da się tego zrobić - możemy sobie ustalać kolor tła dla tr, ale i tak na najniższym poziomie jest klasa td, np. td.row1, które spowoduje, że kolor tła nie będzie dziedziczony po tr.
Jedyne co przychodzi mi na myśl, to użycie javascriptu - gdy najedziemy myszką, pobieramy rodzica td na którego najechaliśmy (czyli najbliższy tr), następne zmieniamy kolor wszystkim jego dzieciom (td). Gdyby to było jQuery może bym to "wydukał" jakoś, no ale nie z prototype.
Adrianowi chodziło chyba o to aby ustawić class="customhover" dla tr (wiersza) a z kolumn wywalić wtedy nie ma co wyświetlać i odziedziczy po rodzicu, tak?
Aha, no tak, teraz doczytałem dopisek.
W takim razie trzeba by te klasy skopiować pod innymi nazwami (aby nie tracić ich innych cech) i wywalić z nich kolor tła.
Znalazłem inny sposób, bezbolesny
Szablony
forumbit_depth2_cat i
forumbit_depth2_forum
Kod:
<tr class="{$bgcolor} customhover">
<td align="center" valign="top" width="1"><img src="{$theme['imgdir']}/{$lightbulb['folder']}.gif" alt="{$lightbulb['altonoff']}" title="{$lightbulb['altonoff']}" class="ajax_mark_read" id="mark_read_{$forum['fid']}" /></td>
<td valign="top">
<strong><a href="{$forum_url}">{$forum['name']}</a></strong>{$forum_viewers_text}<div class="smalltext">{$forum['description']}{$modlist}{$subforums}</div>
</td>
<td valign="top" align="center" style="white-space: nowrap">{$threads}{$unapproved['unapproved_threads']}</td>
<td valign="top" align="center" style="white-space: nowrap">{$posts}{$unapproved['unapproved_posts']}</td>
<td valign="top" align="right" style="white-space: nowrap">{$lastpost}</td>
</tr>
global.css
Kod:
tr.customhover:hover {
background: yellow;
}
Usunąłem zmienną
{$bgcolor} w kolumnach (td) dodając ją wraz z klasą
customhover w wierszu (tr).
W ten sposób nie rezygnujemy z kolorów działów opartych na klasach
trow1 i
trow2 i dodatkowo mamy podświetlenie w wierszu.
Zrobione na stronie głównej , a teraz przydało by się to samo
Zwykłe wątki , czyli wewnątrz .