Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [XHTML + CSS] Link obejmujacy cala tabele
Forum PHP.pl > Forum > Przedszkole
MySQL
Czy jest mozliwosc aby link objal cala tabele i w dodatku zeby byla taka strona zgodna ze standardem XHTML?

Kiedy robie cos takiego:

  1. <a href="index.php">
  2. <tr>
  3. <td>Tekst</td><td>Tekst2</td>
  4. </tr>
  5. </table>
  6. </a>


i sprawdzam na stronie http://validator.w3.org/ to wyswietla mi blad w postaci:
One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").

Jak mozna to obejsc obojetnie na jaki sposob, zeby cala tabela stala sie linkiem? Linkowanie kazdej komorki nie wchodzi w gre bo chcialbym osiagnac taki efekt, ze po najechaniu na jakakolwiek komorke tabeli, tlo calej tabeli troszke sie rozjasni (lub taki podobny). Tak jak jest to na niektorych forach, ze po najechaniu na ktorys z watkow caly wiersz sie podswietla (taki fajny efekt).

Priorytetem jest oczywiscie to, zeby strona dobrze walidowala sie w standardzie XHTML.

----- moje hipotetyczne rozwiazanie -----

Myslalem nad czyms takim:

  1. <a class="linkTab" href="index.php">
  2. <tr>
  3. <td>Tekst</td><td>Tekst2</td>
  4. </tr>
  5. </table>
  6. </a>


a w pliku ze stylami dac:

  1. a.linkTab
  2. {
  3. display: block;
  4. }


Oczywiscie nadal strona bedzie pokazywac bledy bo nie wie nic o klasie linkTab ale logicznie element blokowy jest juz w elemencie blokowym.
hiszpanespaniol
tak jak piszesz, element liniowy nie może otaczać elementu blokowego.
Podejrzewam, że na tych niektórych forach, gdzie pola podświetlają się po najechaniu myszką, wykorzystuje się pseudoklasę hover (javascript'owe onMouseOver lub onMouseEnter), a że w niektórych "przeglądarkach" pseudoklasa hover działa tylko dla linków, to wszystko robi się za pomocą javascript (dla tej przeglądarki).

Czyli niczym nie musisz obejmować swojej tabeli. Wystarczy, że jakoś ją zidentyfikujesz, a w javascript zmienisz jej kolor po najechaniu myszką. Jeżeli chcesz link mieć z tabeli, to zamiast/oprócz koloru dodaj akcję onclick z window.location odpowiednim
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.