Newsgroup: it.lavoro.professioni.webmaster
Titolo: css e colore dei link

salve a tutti.
sto approfondendo il fantastico mondo dei css...
mi sono fatto un briciolo di cultura in merito grazie ai siti
http://www.mako4css.com/
e
http://jigsaw.w3.org/css-validator/
ho fatto un sito utilizzando i suddetti css, visibile all'indirizzo
http://www.com-and-c.it/r&d/giai_via/azienda.html
ho un problema... ho definito il colore dei link in tre stati (avvito,
visitato e over) come potete vedere sotto, ma non sempre il mio IE 5.5
risponde nel modo corretto. Per esempio, io vorrei vedere i link attivi e
non ancora visitati in rosso (#FF0000), e in effetti l'anteprima di
dreamweaver me li fa vedere in rosso. Ma la versione online mi fa vedere i
link come già visitati...
Questa cosa mi si ripresenta nche se ripulisco la cache... e non capisco
perchè
Un'ultima cosa... il css validator mi da un warning sul colore dei link...
mi dice che il colore di background del link non è settato (il che è giusto,
io non voglio settare nessun colore di bg). E' possibile che il mio problema
con il colore del link dipenda da ciò?
se qualcuno mi saprà aiutare o anche solo indirizzare sulla strada giusta,
ne sarò molto grato. I css mi sembrano uno strumento potentissimo, e vorrei
imparare ad usarli con proprietà
grazie :-)
A:link {
  color: #FF0000;
  text-decoration: none;}
A:visited {
  color: #990000;
  text-decoration: none}
A:hover {
  color: #FF6633;
  text-decoration: underline;}

 perchè
I link puntano alla stessa pagina e quindi è normale che vengano mostrati
con lo stile per i visited.
Mao
--------------------------------
Inviato via 
http://usenet.libero.it


ma questi link puntano a delle ancore interne alal pagina, non alla pagina
stessa, che ovviamente risulta visitatan nel momento stesso in cui si
accede...

 ha scritto nel messaggio
news:192Z106Z52Z2Y1...@usenet.libero.it...


 accede...
Di fronte ad una serie di link tipo questi:
<a href="ciccio.html#frammento1">
<a href="ciccio.html#frammento2">
<a href="ciccio.html#frammento3">
Nel caso l'utente abbia già visitato la risorsa 
"ciccio.html#frammento2", il browser può:
a) contrassegnare come visitati tutti e tre i link (perché l'utente ha 
già visitato la risorsa "ciccio.html", perché effettivamente il 
frammento non fa parte dell'URL - IE)
oppure:
b) contrassegnare come visistato solo il secondo link (quindi 
considerare il frammento come parte dell'URL - Mozilla).
Insomma un browser può fare un po' come gli pare, visto che non esistono 
indicazioni particolari su come determinare un link visitato nelle 
specifiche HTML (e se facessero tutti allo stesso modo, il mercato 
sarebbe un po' piatto).
Quale sia comportamento migliore non si può dire, dipende da cosa 
preferisce l'utente: può preferire sapere che la pagina di destinazione 
è stata già scaricata, anche se ha letto solo uno dei 'capitoli', oppure 
può preferire sapere quali 'capitoli' deve ancora leggere anche se ha 
gia' scaricato la pagina.

 gia' scaricato la pagina.
grazie, adesso, ho capito. quindi il mio problema è senza soluzione. Se
voglio usare i css per "colorare" dei link interni di una pagina, non sono
mai sicuro a priori del risualtato

 mai sicuro a priori del risualtato
Ma anche se usi l'attributo 'vlink' nel tag BODY o anche se non usi 
niente e lasci i colori cosi' come sono. Decidere quali URL vanno 
evidenziati come visitati e quali no spetta al browser, e su questo, 
come autore, non hai possibilita' di intervento.
Una volta che il browser ha deciso se un link e' visitato o no, allora 
viene applicato il colore che specifichi, come CSS o come attributo HTML.
Se ritieni che sia importante pero' differenziare link interni ad una 
pagina *in ogni caso* allora puoi definire una classe diversa (o ancora 
meglio, un ID) per ogni link:
<a id="f1" href="pagina.html#frammento1">
<a id="f2" href="pagina.html#frammento2">
e poi definire un CSS tipo:
#f1:visited {
   color:red;
}
#f2:visited {
   color:yellow;
}
In questo modo puoi differenziare i link in maniera diversa 
indipendentemente da come il browser gestisce i link visitati, anche se 
forse non è proprio quello che cercavi.
Il massimo sarebbe poter usare i selettori di attibuto, senza bisogno di 
usare degli ID:
a[href=pagina.html#frammento1]:visited {...}
a[href=pagina.html#frammento2]:visited {...}
ma il supporto nei browser attuali e' alquanto scarso.

 ma il supporto nei browser attuali e' alquanto scarso.
grazie. sono commosso. la risposta è molto complessa da capire (sono ancora
un novizio dei css) ma molto completa. Posso chiederti dove hai attinto
tanta sapienza? ho dato un'occhiata ad alcuni siti considerati ottimi (tipo
www.mako4css.com
) , ma sono poveri di contenuto rispetto a quanto mi
racconti

 racconti
Beh la comprensione del funzionamento dei browser nasce dall'aver letto 
le specifiche dell'HTML pubblicate dal W3C e aver visto che non ci sono 
riferimenti espliciti a come trattare i link visitati e dall'aver 
verificato che ogni infatti ogni browser fa come gli pare :)
Poi letture in qua e la' sul web e su usenet, in particolare su 
newsgroup della gerarchia comp.infosystems.www.authoring.*