![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 10.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Chcę zrobić tak, aby po kliknięciu w dowolne miejsce wewnątrz mojego diva użytkownik został przeniesiony na inną podstronę. Początkowo zrobiłem to za pomocą zdarzenia onclick przypisanego do tego diva. Później jednak okazało się, że możliwe jest wstawienie całego tego diva jako nazwy hiperłącza. Pomyślałem, że będzie to lepsze rozwiązanie z względu na użytkowników z wyłączoną/blokowaną JS. Jednak w takim wypadku strona nie waliduję się poprawnie w walidatorze. Problemem jest umieszczenie elementu blokowego (div) wewnątrz liniowego (a). Tak więc w jaki najlepszy sposób zrobić "klikalnego" diva? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 118 Pomógł: 5 Dołączył: 9.07.2003 Skąd: Wołów/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Definitywnie tak! Nie należy dawać div'ów między znaczniki <a></a>.
Najkorzystniejszym rozwiązaniem jest ustawienie wysokości, szerokości oraz wyświetlania jako blok dla linku. Jest to bardzo wygodne, gdyż można nie tylko określić rozmiar linku, ale i ustawić podmianę tła po najechaniu (hover). W wypadku divów i hover konieczne są kombinacje za pomocą js, aby obsługiwać to w starszych wersjach IE. Jeżeli chcesz zrobić to za pomocą div'a z powodu np. zawartości w nim (np. nie tylko link, ale jakieś ramki itd.), polecam korzystanie ze znacznika <span></span>, któremu również możesz nadać parametr display:block i pozycjonować wewnątrz <a></a>, a dodatkowo jest zgodny ze standardami. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 15:13 |