Autor Zpráva
Martin Adámek
Profil *
Zdravím,

chtěl jsem si u seznamu novinek na webu odlišit navštívené a nenavštívené položky obrázkem vpravo:

  a
    { display:          block;
      text-decoration:  none;
      padding-right:    19px;
      border-bottom:    1px solid;
    }
  
    a:link
      { 
        background:    url('/obrazky/flag.gif') no-repeat right;
      }
  
    a:visited
      { background:    url('/obrazky/done.gif') no-repeat right;
      }

ale pořád se mi u všeho zobrazuje červená vlaječka, a to i u navštívených odkazů.
Prohlížeč zjevně ví, že je navštívil - text je fialový.

Zkusil jsem i definovat barvu pozadí, a i ta potvrzuje, že prohlížeč ví, co je navštívené, a co ne
(a navíc že jsem se neuťuk třeba ve visited)

Vtipný je, že nejen že pro pozadí nefunguje :visited,
ale dokonce se navíc pozadí z :link používá i pro :visited, kde nemá co dělat
(zkoušel jsem to postupně jednotlivě)

http://www.adamek.cz/test-bg.htm

Zkoušel jsem to s barvou i bez barvy, pak i přímo přes background-image... a nic.

CSS validátor nemá námitek.
ale FF a IE se mi smějou do očí...


Pak jsem našel článek,
podle kterýho to vypadá, že se autoři prohlížečů rozhodli udělat záměrný bug pro bezpečí uživatelů...
...čímž jsem si bohužel tak trochu odpověděl, ale i tak:

Máte s tím někdo zkušenost? Umíte to někdo vyřešit? Umíte mi někdo potvrdit, že to fakt nejde?
Prostě - víte o tom někdo něco?

Díky
Plaváček
Profil
Martin Adámek

Zkus použít jeden obrázek a pro :visited mu změň jenom pozici, to by mělo fungovat.
pidusak
Profil
Plaváček:
nevím jestli se na to dá spolehnout, viz http://hacks.mozilla.org/2010/03/privacy-related-changes-coming-to-css-vistited/

If you’re using background images to style links and indicate if they are visited, that will no longer work.
Martin Adámek
Profil
Zkusil jsem změnit pozici, ale FF nereaguje. Takže to fakt zakázali, asi aby si nikdo pomocí toho nedělal statistiky návštěvnosti (jiných webů).
Např. takovej :hover funguje (aspoň pro zrušení obrázku, náhradu jiným jsem u něj nepotřeboval), takže to bude záměr a aspoň relativně trvalej stav.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0