Visualizzazione dei risultati da 1 a 8 su 8

Discussione: menu a:active

  1. #1

    menu a:active

    Ciao ragazzi, ho un dubbio.

    In un menu, quando voglio dare un attributo a una voce al passaggio del mouse, uso
    codice:
    menu a:hover
    Quando invece voglio che quella voce del menu resti con quell'attributo per tutto il tempo in cui è attiva (e quindi, nel caso del menu, per tutto in tempo che sono in quella pagina) pensavo di dover usare
    codice:
    menu a:active
    Però quest'ultimo non funziona...

    Potete dare un occhiata a questa pagina in costruzione per verificare:

    http://www.ivanisevic82.com/pages/glass.php

    Come mai?

    Cosa sbaglio?

    Grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    per tutto il tempo in cui è attiva (e quindi, nel caso del menu, per tutto in tempo che sono in quella pagina)
    L'errore sta qui.
    Il link e` "attivo" quando il mouse e` premuto su quel link.
    Come conseguenza della pressione sul link, di solito la pagina viene poi eliminata e caricata una nuova pagina (questo comportamento standard puo` venir modificato tramite JS).

    Se ne e` parlato molte volte nel forum (== fa' una ricerca nel forum): quello che probabilmente vuoi e` inserire una classe che modifichi il comportamento di un "link" quando punta alla pagina stessa.
    Dato che usi PHP e` anche facile da realizzare.


    Nel tuo codice ho visto pero` alcune cose da cambiare.
    Anzitutto dichiari di scrivere in inglese, poi pero` scrivi in italiano: vuol dire che un lettore di schermo avra` grosse difficolta` a leggere la pagina.
    E poi usi l'attributo target, che e` obsoleto e potrebbe non essere riconosciuto in qualche browser (ad esempio nei browser per palmari e cellulari): meglio se passi ad una DTD Strict.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Innanzitutto ti ringrazio...
    Qualche spiegazione relativa alle tue giuste osservazioni;
    Il template che sto costruendo non è per me, lo distribuirò gratuitamente per il cms che utilizzo di solito (websitebaker).
    Dovendolo distribuire non posso creare un menu come voglio io, ma devo affidarmi ad alcuni specifici moduli del mio cms (in questo caso a shomenu2, un modulo che aggiunge in automatico ogni pagina aggiunta al menu, personalizzabile su più livelli di profondità).

    - Per il target: mi sà che lo crea in automatico il mio modulo per creare i menu menu del cms.

    - Per la lingua: dovrò distribuirlo in un sito in inglese, frequentato da gente che parla prevalentemente l'inglese. Alla fine non ci sarà alcun testo "predefinito" per chi scaricherà il template.

    Detto questo, siccome il discorso dell'attributo target mi ha un pò inquietato, vado subito a parlarne nel forum del cms.

    Per il resto (cioè la questione del menu a:active) farò una ricerca sul forum e tornerò se non troverò soluzioni!

    Grazie!

  4. #4
    Ok, ho capito come si fa per evidenziare la pagina corrente senza js, ma credo che questo metodo per me non vada bene: questo template sarà "pubblico", chiunque può scaricarlo, farsi il suo sito e aggiungere le pagine che vuole.
    Mentre nella soluzione che ho trovato (qui su html.it) si tratta di aggiungere un selettore di id unico per ogni pagina (quindi potrei usarlo SOLO su un sito mio).

    Ci sono alternative? Anche js se necessario...

    Grazie!

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Anche js se necessario...
    Il problema di JS e` che non tutti i browser lo supportano. Quindi se ci sono pezzi in JS, questi devono essere solo di abbellimento, non possono essere fondamentali per far funzionare la pagina/il sito.
    Un menu in JS rende le pagine non accessibili (salvo eccezioni).

    Quindi occorre procedere per gradi, secondo la tecnica di "Progressive Enhancement" (v. ad esempio Capire il progressive enhancement). Esiste anche la tecnica "Graceful Degradation", piu` vecchia del progressive enhancement, che pero` puo` risultare piu` complessa da applicare.

    Ecco alcuni spunti. Comunque se pensi di procedere in JS, rivolgiti in quel forum .
    Progettare con Ajax: il Progressive Enhancement)
    Graceful Degradation & Progressive Enhancement
    Progressive enhancement con i CSS
    Progressive enhancement con Javascript
    Contenuti generati e progressive enhancement in Internet Explorer
    Position fixed performante su IE6
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Ma questa non è una soluzione del problema, è una filosofia di vita!

    Ti ringrazio per i link che sicuramente saranno utili e interessanti, ma purtroppo non ho il tempo per leggere/studiare tutte quelle cose.

    Quello del programmatore web non è il mio lavoro (lavoro in ambito legale): al momento lo faccio come passatempo, per "sfogare" le mie passioni di grafica e design.

    Cercherò di trovare una soluzione sul forum js e su quello del mio cms, grazie comunque!

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Devi scegliere tra fare pagine universali, e pagine che si vedano bene solo "per pochi intimi" (quelli che hanno un particolare browser e/o un particolare sistema operativo).

    Se vuoi una cosa seria, occorre sapere cosa si fa (e quindi conoscere gli oggetti che usi).
    Se invece ti basta "mettere in rete qualcosa" puoi usare gli strumenti che vuoi, anche quelli bacati.

    Il fatto che non sia il tuo lavoro, non e` una scusa, e` una aggravante: se non sai fare le cose falle per te, non farle per gli altri (e questo mi sembra piu` un ragionamento da legale che da programmatore).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  8. #8
    Originariamente inviato da Mich_
    Devi scegliere tra fare pagine universali, e pagine che si vedano bene solo "per pochi intimi" (quelli che hanno un particolare browser e/o un particolare sistema operativo).

    Se vuoi una cosa seria, occorre sapere cosa si fa (e quindi conoscere gli oggetti che usi).
    Se invece ti basta "mettere in rete qualcosa" puoi usare gli strumenti che vuoi, anche quelli bacati.

    Il fatto che non sia il tuo lavoro, non e` una scusa, e` una aggravante: se non sai fare le cose falle per te, non farle per gli altri (e questo mi sembra piu` un ragionamento da legale che da programmatore).
    A me invece questa sembra un' esagerazione: in una comunità c'è chi si mette a disposizione dando il proprio contributo.
    C'è chi lo fa per professione e chi lo fà per passione.
    Se ti fai pagare DEVI fare un lavoro perfetto.
    Se metti a disposizione di una comunità un lavoro GRATUITAMENTE, fai un regalo a chi vuole usufruirne.
    Chi troverà interessante quella risorsa potrà utilizzarla, migliorarla, farla sua.
    Chi la troverà scadente cercherà oltre.
    D'altra parte mi sto sbattendo tanto per rendere la cosa più fruibile possibile e considerando che questo è un lavoro che "offro alla comunità" di cui faccio parte (gli utenti che utilizzano il mio cms) preferisco che abbia qualche bug ma una maggiore fruibilità per tutti.
    Perchè questo è lo scopo dei template che vengono distribuiti gratuitamente dalla "repository" di WebSiteBaker: la fruibilità per tutti.
    Chiaro che il mio obbiettivo resta comunque quello di renderlo più possibile fruibile, ma anche senza bug.

    Detto questo, ho trovato la soluzione al problema, grazie agli strumenti offerti del cms che uso e al supporto delle comunity, il risultato puoi vederlo in questa pagina:

    http://www.ivanisevic82.com/pages/glass.php

    Non badare le altre pagine perchè lì c'è ancora lavoro da fare.

    Grazie comunque per il supporto e bada bene che in riferimento a quanto ho scritto sopra non c'è nessuna polemica, ma solo il tentativo di spiegarti quali sono le ragioni e gli intenti del lavoro che, per pure passione, sto portando avanti.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.