Strona 1 z 2
Komórka typu "rollOver"
: 14 paź 2005, 20:53:36
autor: linksworld
zastanawia mnie, jak zrobione są menu na niektóruch stronach www.
na przykład
mozilla.org
to znaczy:
tekst w komórkach,
a po najechaniu na komórkę jej tło się zmienia
: 14 paź 2005, 21:00:38
autor: Mati
No ja też jestem ciekaw.
: 14 paź 2005, 21:01:03
autor: Puma
[JavaScript] Jak zmienić kolor komórki tabeli po najechaniu na nią myszą?
Problem
Chcesz zmienić kolor w jednej z komórek tabeli po najechaniu na nią myszą, po opuszczeniu kursora, stary kolor ma zostać przywrócowny ponownie.
Rozwiązanie
W różnych projektach graficznych lub przy wyróżnianiu aktualnie wybranej komórki menu stworzonego z wykorzystaniem tabel, można zastosować bardzo prosty i efektowny trick - zmienić kolor pola. Zabieg stosowany z wyczuciem znacznie ułatwia nawigację po menu na stronie. Zobacz jak to osiągnąć.
<table border=1><tr>
<td bgcolor="yellow"
onMouseOver='this.style.backgroundColor="red"'
onMouseOut='this.style.backgroundColor="yellow"'>
komórka 1
</td>
<td bgcolor="#c0c0c0"
onMouseOver='this.style.backgroundColor="blue"'
onMouseOut='this.style.backgroundColor="#c0c0c0"'>
komórka 2
</td>
</tr></table>
Jak widzisz w przykładzie, ważne jest ustalenie trzech kolorów - pierwszy (bgcolor) to kolor domyślny komórki, drugi (onMouseOver) uaktywnia się po najechaniu kursorem myszy, a trzeci (onMouseOut) pojawi się po opuszczeniu komórki przez kursor.
Dobierając te trzy kolory można dowolnie modyfikować kolory poszczególnych komórek tabeli. Pamięraj tylko, że kolory muszą być umieszczone w cudzysłowach - inaczej nie zadziałają.
: 14 paź 2005, 22:57:20
autor: porni
Aaaa CSS nie lepszy??
i w arkuszu styli
Kod: Zaznacz cały
.komorka a:link {
background: blue;
}
.komorka a:hover {
background: black;
}
: 15 paź 2005, 15:58:35
autor: linksworld
Hmm... ciekawy bardzo ten CSS
, bo JavaScript spotykany jest rzadko w takich momentach
.
Dziwi mnie jeszcze jedna rzecz:
w komórce jest dajmy na to jedno słowo, a łączem jest cała komórka...
Widziałem jeszcze coś takiego:
Kod: Zaznacz cały
off
{
background: #cośtam
}
off.hover
{
background: #inne cośtam
}
: 15 paź 2005, 16:21:45
autor: Puma
[JavaScript] Jak zrobić, aby cała komórka tabeli odsyłała na inną stronę po jej kliknięciu?
Problem
Chcesz stworzyć odnośnik w postaci całej komórki tabeli, tak aby można było kliknąć w dowolne miejsce komórki co spowoduje przekierowanie na inną stronę.
Rozwiązanie
Często menu budowane jest w postaci kolorowych komórek tabeli, jednak linkiem jest zawsze tylko odnośnik znajdujący się w tej komórce. Użytkownik musi "trafić" w link, co nie zawsze jest wygodne.
Znacznie ciekawszym rozwiązaniem jest kliknięcie w dowolny obszar komórki tabeli, aby od razu przejść do wybranej strony lub podstrony. Zobacz jak to osiągnąć.
Kod: Zaznacz cały
<table width=200 border=1>
<tr><td bgcolor=yellow align=center
onclick="document.location='http://web.reporter.pl/'"
style="cursor:pointer">
<a href="http://web.reporter.pl/">Web</a>
</td></tr></table>
Dodanie do definicji komórki skryptu wywoływanego po jej kliknięciu (onclick) powoduje, że przeglądarka pobiera zawartość strony bez czekania na kliknięcie we właściwy odnośnik tekstowy.
Dodatkowy styl cursor:pointer powoduje, że symbol kursora myszy zamienia się w komórce tabeli na symbol rączki, jak w wypadku prawdziwego odnośnika.
Skrypt jest bardzo wygodny w użyciu i nie wymaga od użytkownika precyzyjnego najechania na odnośnik tekstowy, szczególnie gdy jest on krótki.
: 15 paź 2005, 17:23:43
autor: linksworld
Puma dostaje ode mnie drugiego plusa
: 16 paź 2005, 09:44:04
autor: Farseer
Puma ladnie kopiowac umiesz
: 20 paź 2005, 20:12:01
autor: linksworld
Farseer Ty to jesteś... czasem boję się odpowiadać... Twoja osoba straszy użytkowników... Bez obrazy !!
: 20 paź 2005, 20:42:45
autor: fuma
Już któryś raz z kolei wypowoadzasz się linksworld nie na temat. Proszę o zaprzestanie tego typu praktyk.
: 21 paź 2005, 10:21:07
autor: Puma
W CSS można napisać tak, cała komórka jest jako link :
Kod: Zaznacz cały
.blok {
display: block;}
<TABLE border="1" width="200">
<TR height=18px>
<TD width=194px> <A HREF="http://www.puma.kw.pl" class="blok">Intermania</A> </TD>
</TR>
</TABLE>
: 21 paź 2005, 18:39:34
autor: linksworld
Puma, rozumiem, że Ty to rozumiesz, i że rozumiesz to, że ja tego
nie rozumiem, więc powiem, że nie wstawię Ci plusa, bo nie jest to pomocne,
a na dodatek tego nie rozumiem
: 21 paź 2005, 18:59:45
autor: Puma
Ha ha, fajnie to powiedziałeś
Kod: Zaznacz cały
<style>
.blok {
display: block;}</style>
Robisz komórkę w tabeli a w niej linka, dodajesz class(styl) przy linku (class="blok").
ps. Możesz naturalnie dać style w oddzielnym pliku a nie w dokumencie ze stroną.
ps2. A plusa nie chcę bo i tak już mówią iż dostałem dwa od ciebie
To działa !!!
: 30 paź 2005, 00:16:19
autor: linksworld
: 30 paź 2005, 08:23:04
autor: Puma
Teraz jeżeli chcesz żeby komórka zmieniała kolor, wystarczy dać link nieaktywny i aktywny na inny kolor gdyż link jest rozciągnięty na całą komórke.
ps. Ja mam tak zrobione :
Kod: Zaznacz cały
.tabelamenu a:link, .tabelamenu a:visited {
text-decoration: none;
color: #804000;
background-color: transparent;
display: block;
}
.tabelamenu a:hover {
color: #ffffff;
background-color: #804000;
display: block;
}
Cała tabela ma class
tabelamenu, gdybyś nie ograniczył linka do komórki lub stylem to wtedy link by się rozciągnął na całą szerokość strony (display: block; ).