--- title: Podaj Dłoń 'kursorowi' slug: Podaj_Dłoń_'kursorowi' tags: - CSS - Wszystkie_kategorie translation_of: Web/CSS/CSS_Basic_User_Interface/Using_URL_values_for_the_cursor_property translation_of_original: Giving_'cursor'_a_Hand ---
Summary: Netscape 6 and Mozilla support cursor quite nicely, but that's not true of some other browsers. Happily, there's a fix. Find out how to get a hand from multiple browsers when you use this property. Wielu programistów pytało kiedy Mozilla i Netscape 6+ planuje zaimplementować obsługę własności cursor
. Są oni zazwyczaj zaskoczeni odkrywając, że obie przeglądarki już od dawna wspierają ten standard. Obsługa jest oparta na zatwierdzonej specyfikacji W3C dla CSS2, w odróżnieniu od dodawania własnych pomysłów.
Podstawowym problemem jest to, że: Internet Explorer 5.x dla Windows rozpoznaje wartość hand
, która nie występuje nigdzie w sekcji 18.1 CSS2-- ani nigdzie indziej w specyfikacji na ten temat. Wartość najbliższa zachowaniu hand
to pointer
, który specyfikacja definiuje jako: "Kursor jest wskaźnikiem pokazującym odnośnik." Należy zwrócić uwagę, że nigdzie nie jest powiedziane, że ma on pokazywać rękę, ale patrząc na aktualne zachowanie przeglądarek, efekt jest właściwie taki sam.
Niestety, IE5.x/Win zupełnie nie rozpoznaje wartości pointer
. Na szczęście IE6/Win i IE5.x/Mac rozpoznają pointer
tak samo jak hand
. Niemniej, Mozilla i Netscape 6+ w zgodzie ze specyfikacją CSS2 wspierają pointer
, lecz ignorują własnościową wartość hand
.
Tak więc jeżeli Mozilla/Netscape ignoruje hand
a IE5.x/Win ignoruje pointer
, co może zrobić autor? Poproś o oba, w odpowiedniej kolejności, a zostaniesz nagrodzony.
a {cursor: pointer; cursor: hand;}
Nie odwracaj kolejności! Jeżeli zapiszesz styl tak jak pokazany powyżej, Gecko zobaczy wartość pierwszą i zignoruje drugą, więc w efekcie dostaniesz pointer
. IE5.x/Win zobaczy obie i użyje drugiej, więc dostaniesz hand
. Jeżeli odwrócisz wartości, to Gecko zadziała, ale IE5.x/Win również zobaczy oba i użyje drugiego, a to nie da Ci małego wskaźnika-rączki...
Przy użyciu powyższej sztuczki możesz upewnić się, że Twoja strona pokaże wskaźnik rączki za każdym razem.
Ostrzeżenie: Powyższy przykład polecany tutaj spowoduje, że strona nie będzie się walidować, ponieważ będzie zawierać nieprawidłową wartość cursor
. Autorzy stron powinni sami ocenić czy ten problem jest ważniejszy, czy mniej ważny od wsparcia IE5.x/Win.
Zastanawiasz się czy Twoja przeglądarka obsługuje hand
i pointer
? Sprawdź to w poniższej tabelce!
Ta komórka tabeli posiada styl cursor: pointer . Powinna spowodować zmianę kursora na małą wskazującą rączkę w Mozilli i Netscape 6+, IE6/Win, oraz IE5.x/Mac, lecz nie IE5.x/Win. |
Ta komórka tabelinie posiada atrybutu cursor zatem powinien zostać użyty domyślny kursor. |
Ta komórka tabeli posiada styl cursor: hand . Powinna spowodować zmianę kursora na mały wskaźnik w IE5+/Win, ale nie w Mozilli i Netscape 6. |