Efekt hover dla <td> w <table> używając <a>, display: block
- Data:
- 11 czerwiec 2007
- Kategoria:
- CSS, HTML i XHTML, Programowanie
Spis treści
Stworzenie efektu typu hover, głównie dla IE≤6, dla td w tabeli może być rozwiązane na kilka sposobów. Najprostszym sposobem na to jest po prostu użycie CSS-a:
td:hover{background-color:green;}
O ile w większości przeglądarek efekt ten działa, o tyle w IE≤6 :hover nie działa bezpośrednio przy użyciu samego CSS-a. Funkcjonuje tylko dla <a>...</a>. Niemniej jednak można zastosować co najmniej dwa sposoby dla IE5.x i 6:
Element anchor a w td
Jednym ze sposobów jest zastosowanie elementu anchor <a>...</a> w <td>...</td> i nadanie mu właściwości display:block;. O ile sam efekt jest działający, o tyle od strony semantycznej struktura jest niepoprawna, bo przecież w <td>...</td> jest po prostu link, za pomocą którego oszukujemy
, w pewnym sensie, tylko od strony wizualnej. Nie wymaga jednak stosowania javascript-u. Zobacz przykład jak to działa.
Zastosowanie javascript-u
Znacznie jednak lepiej jest po prostu użyć niewielkiego skryptu htc dla IE, który umieszczamy w arkuszu stylów. W naszym przykładzie jest to zrobione bezpośrednio w kodzie html:
<!--[if lt IE 7]><style type="text/css">table tbody td { behavior:url(hover.htc); }</style><![endif]-->
Rozwiązanie proste i nie naruszające semantyki kodu html. Drobną wadą tego jest to, że nie zadziała bez javascript-u. Zobacz przykład jak to działa.
Twój komentarz
Kategorie
- Accessibility (16)
- Aktualności Ikeris (22)
- Artykuły (12)
- CSS (13)
- Flash (4)
- Grafika (2)
- HTML i XHTML (13)
- Oprogramowanie (6)
- Programowanie (18)
- Przeglądarki (23)
- Server side (3)
- Skrypty (7)
- Systemy (2)
- Usability (6)
- Wordpress (11)
Linki
