Ragazzi, volevo sapere se esistesse un modo per far si che se passi il mouse su un collegamento ipertestuale come background appaia un'immagine. Magari è possibile cn i CSS, o con lo JAVASCRIPT?
Grazie infinite.
Ragazzi, volevo sapere se esistesse un modo per far si che se passi il mouse su un collegamento ipertestuale come background appaia un'immagine. Magari è possibile cn i CSS, o con lo JAVASCRIPT?
Grazie infinite.
con i css di sicuro si puo fare con un colore con un img nn so prova nei tag <head> metti <style>a:hover {backgroung-image: url(url tua img);}</style>
a:hover {
background-image: url('immagine.gif');
}
Ciao! :D
Poske ho provato a fare come dici tu, ma non funziona: il class l'ho denominto "select_menu" e questo è il codice css:
Codice:A.select_menu:link { color: #fff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none } A.select_menu:active { color: #fff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none } A.select_menu:visited { color: #fff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none } A.select_menu:hover{ background-image: url('bar_menu.gif') }
il codice è url(immagine.gif) nn url('immagine.gif')
Questo codice dovrebbe funzionare... provalo!Codice:.select_menu a:link { color: #fffff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none; } .select_menu a:active { color: #ffffff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none; } .select_menu a:visited { color: #ffffff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none; } .select_menu a:hover { background-image: url('bar_menu.gif'); }
Ciao! :D
infatti con l'url(), es.:
background-image: url(/dir/img.gif)
gli apici NON vanno messi.
Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)
[ot]Io nel mio sito li metto e funziona... e li ho anche validati col W3C... boh?[/ot]Originalmente inviato da heracleum
Ciao! :D
Anche in questo modo: url(immagine.gif) non mi funziona lo stesso.Originalmente inviato da jostock
Il file immagine.gif deve trovarsi nella stessa cartella della pagina in cui si trova il foglio di stile (se quest'ultimo è esterno).Originalmente inviato da silverseraph
Ciao! :D
Certo, si trova nella stessa Directory.
Ho provato ad inserire il class anche tra i tag DIV, ma niente da fare.
Puoi postare una pagina di esempio? mi sembra strano che non vada...
Ciao! :D
Ecco qui, il codice CSS lo metto nella pagina per non creare impicci :D
Codice:<HTML> <HEAD> <STYLE TYPE="text/css" MEDIA=screen> <!-- A.select_menu a:link { color: #fffff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none; } A.select_menu a:active { color: #ffffff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none; } A.select_menu a:visited { color: #ffffff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none; } A.select_menu a:hover { background-image: url(bar_menu.gif); }--> </STYLE> </HEAD> <BODY> <a href="#" class="select_menu">Prova</a> </BODY> </HTML>
Ecco cos'è! devi togliere tutte le "A" prima dei .select_menu :DOriginalmente inviato da silverseraph
Ciao! :D
Le ho tolte, non ci crederai mai, ma non funziona lo stesso....STO IMPAZZENDO!!
Ecco il codice STYLE corretto (e anche un po' ottimizzato):
Dunque, visto che gli stili li indichiamo nell'ordine:Codice HTML:<HTML> <HEAD> <STYLE TYPE="text/css" MEDIA="screen"> <!-- .select_menu a:link, .select_menu a:visited, .select_menu a:active { color: #ffffff; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; TEXT-DECORATION: none; background-image: none; } .select_menu a:hover { background-image: url(bar_menu.gif); } --> </STYLE> </HEAD> <BODY> <div class="select_menu"> <a href="#">Prova</a> </div> </BODY> </HTML>
.classeElemento a:stato {}
vuol dire che i link devono essere CONTENUTI da un contenitore (quello che volete, span, div, td è uguale) che abbia class=".classeElemento", infatti come vedete ora c'è un div che ha il class e dentro tutti i link avranno quello stile senza doverlo neanche ripetere per tutti i link -eventualmente numerosi-.
Da notare che l'ottimizzazione sta nel fatto che tutti gli stati con aspetto identico possono essere definiti una volta sola in blocco, separati da virgole.
Da notare anche quel curioso:
background-image: none;
nelle classi dei link normali (non hover) ... perché esplicitare che non ci deve essere immagine di sfondo? che senso ha? BOH! infatti in Mozilla non c'è alcun bisogno mentre l'ennesima falla di Internet Explorer lo rende necessario.
Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)
Prima l'ho scritto, ora lo ripeto: in passato avevo anche provato son il DIV, ma nulla da fare...ora provo questo codice. Grazie in anticipo.
Ora funziona, ma c'è ancora un problema: l'immagine non si visualizza per intera, ma si visualizza solo come background del collegamento ipertestuale. Come devo fare per visualizzarla intera? Magari si potrebbe fare inserendola in una cella, e impostare una lunghezza standard?
Grazie.
Certo che funziona come puoi leggere dall'ultima parte del messaggio precedente, dopo il codice, ci sono parecchie trappole (soprattutto con IE) da evitare.
Riguardo all'ultima tua perplessità:
Beh ma.. puoi facilmente immaginare che lo sfondo di un link testuale o qualsiasi altra cosa venga linkata abbia delle dimensioni proprie e variabili.. è ovvio che farle coincidere con le dimensioni dell'immagine di sfondo è un'impresa..
o meglio di solito quando si usano questi effetti l'immagine di sfondo è APPUNTO uno sfondo, continuo (seamless) cioè non si nota la ripetizione dell'immagine ma c'è un effetto di sfondo omogeneo,
appunto per non essere condizionati dalle dimensioni di link e immagine di sfondo.
Evidentemente vuoi un effetto che non ho ben presente, è possibile sapere l'indirizzo della tua pagina dove si può aver chiara l'idea che vuoi realizzare?
Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)
Se non ho capito male, lui vorrebbe che un link testuale (credo) tipo "HOME", al momento del passaggio del mouse si trasformasse, chessò, in un'immagine di una casetta che ha come misure ... 100 x 50 pixel ? ... (misure a caso) ...
Chiaramente la parola "HOME" non occupa tutto quello spazio ed è qui che sorge il problema ...
Una soluzione potrebbe essere quella di inserire i link testuali in una tabella con delle celle della stessa misura delle immagini che dovrebbero apparire al passaggio del mouse; la scritta la si può centrare sia in verticale che in orizzontale all'interno della cella e dovrebbe essere a posto ...
...Il grano che nasce e l'acqua che va, è un dono di tutti, padroni non ha...
My Site FAQ di AlterVista Regolamento di AlterVista
Taitaonline hai capito quello che mi serve. Il class l'ho inserito in una cella, ma mi fa lo stesso effetto che faceva col DIV.
Ehh.. allora purtroppo... visto -ora- lo scopo finale, che è sempre meglio esplicitare al primo topic,
.. dicevo purtroppo abbiamo imboccato una strada che per il tuo utilizzo non va affatto bene.. soprattutto se lo si vuol far funzionare su tutti i browser..
Per farti capire perché la strada non va bene:
come dicevo nel mio post precedente questo metodo è OTTIMO per assegnare a QUALSIASI link in una pagina un effetto di "rollover", reso più gradevole dal fatto che lo sfondo che cambia è un'immagine.
Se invece a te serve creare dei rollover SOLO su link di dimensioni prestabilite, dentro celle di stesse dimensioni, si potrebbe fare, indicanzo via css che il link deve essere ESTESO a tutto lo spazio del suo contenitore ( display:block; ) e lavorando un po' con i padding sul link si può distanziare opportunamente la scritta (che andrebbe altrimenti a finire in alto a sinistra, bruttissimo)... ma a questo punto devi rispondere solo a questa domanda:
hai i testi dei link di larghezza variabile (OVVIO immagino)
e vuoi le scritte CENTRATE orizzontalmente nella cella?
Se rispondi SI meglio cambiare immediatamente strada perché è praticamente impossibile centrare una scritta all'interno di un link display:block
(SI/NO) ?
se invece scegli NO: perché ti bastano le scritte allineate a sinistra o destra (sempre con il dovuto margine dal borso, ovvio) allora si può fare senza javascript, solo css..
Dimenticavo:
se proprio non ti va di linkare da pagina sul tuo sito dove stai facendo le prove, potresti almeno linkarci l'immagine di sfondo? così un piccolo indizio può aiutare a farsi un'idea.
Ultima modifica di heracleum : 12-09-2005 alle ore 13.21.22
Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)
A ME LA SCRITTA BASTA A DESTRA. IL LINK NON VE LO POSSO DARE CKE NON E' ONLINE. L'IMMAGINE E' QUESTA: http://img391.imageshack.us/img391/3176/barra3jc.gif
Edit:
sarebbe buona norma non utilizzare mai i caratteri MAIUSCOLI nei forum, grazie.
Ultima modifica di heracleum : 12-09-2005 alle ore 17.02.00 Motivo: CAPS
Ok risolto, anche con scritte centrate, cosa di solito ardua e in questo caso aiutata da un deprecato align="center" che però qui ci piace.
Testato su Mozilla, IE e Opera e funziona in maniera identica su ognuno:
Potete vedere qui come appare:
http://heracleum.altervista.org/img/tmp/bgroll.html
molto elegante, silverseraph ha gusto, non c'è dubbio.
Anche se basterebbe guardare il sorgente HTML, copio qua il codice perché non si sa mai:
Codice HTML:<HTML> <HEAD> <STYLE TYPE="text/css" MEDIA="screen"> <!-- body { background-color:black; } .select_menu a:link, .select_menu a:visited, .select_menu a:active { width: 591px; line-height: 50px; color: #ffffff; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 22px; text-decoration: none; display:block; background-image: none; } .select_menu a:hover { background-image: url(barra3jc.gif); } --> </STYLE> </HEAD> <BODY> <br> <br> <div align="center"> <div class="select_menu"> <a href="#">Prova Rollover con immagine di sfondo</a> </div> <div class="select_menu"> <a href="#">Prova</a> </div> <div class="select_menu"> <a href="#">Prova 2 Testo mooooolto ma moooolto lungo</a> </div> <div class="select_menu"> <a href="#">Prova 3 medio</a> </div> </div> <br> </BODY> </HTML>
Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)
Non so come ringraziarti...sono commosso!!
Figurati... beh un modo di ricambiare ci sarebbe ...
eheheh... (risatina infame)
basta che nei prossimi topic e successivi post, quando chiedi aiuto, cerchi di superare il limite delle DUE righe di spiegazioni/richieste che pare tu ti sia imposto.. in questo modo in molti meno batti e ribatti si arriva presto alla soluzione!
ciao ciao
Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)
Senzaltro seguirò il tuo consiglio!!
ciao e grazie ancora!!