Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Cambiare CSS in base al browser

    Salve a tutti!
    Ho un problema con il mio template... un problema molto diffuso: non ha la compatibilità con tutti i browser.

    Ho tentato di risolvere la cosa a modo mio, ma la situazione che si è venuta a creare è molto complessa: io ho la mia pagina HTML regolata da alcuni fogli di stile esterni, che sono necessari in base al broswser che si usa per visualizzare la pagina.
    Mi spiego meglio. Ho la mia pagina "index.html", regolata dal "template.css". Il foglio di stile "template.css", però, regola lo stile della pagina quando questa è vista con IE, mentre con altri broswer si vede male (errori di visualizzazione, scorretta centratura delle colonne, eccetera). Ho quindi il file "template1.css", che contiene le istruzioni CSS per la corretta visualizzazione in FF, dando però errori in IE. Stessa cosa per "template2.css", con istruzioni corrette per Opera, e così via.

    La domanda è: come posso fare io per regolare il CSS da attivare sulla pagina? Mi occorrerebbe uno script o qualcosa di simile che riconosce il browser del visitatore e in base a quello attiva "template.css", "template1.css", "template2.css", eccetera.

    Potete aiutarmi!
    Grazie ragazzi!

  2. #2
    Utente bannato
    Registrato dal
    Sep 2009
    Messaggi
    1,737
    Si lo puoi fare con uno script in Javascript, che riconosce il browser e richiama il css adatto.

    Per IE puoi anche usare i commenti condizionali.

    Per lo script io non ho il tempo per farlo ma puoi farti spostare nella sezione Javascript, li molto probabilmente troverai qualche cosa anche già pronto

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188

    Re: Cambiare CSS in base al browser

    Originariamente inviato da CeskoBerta
    Salve a tutti!
    Ho un problema con il mio template... un problema molto diffuso: non ha la compatibilità con tutti i browser.

    Ho tentato di risolvere la cosa a modo mio, ma la situazione che si è venuta a creare è molto complessa: io ho la mia pagina HTML regolata da alcuni fogli di stile esterni, che sono necessari in base al broswser che si usa per visualizzare la pagina.
    Mi spiego meglio. Ho la mia pagina "index.html", regolata dal "template.css". Il foglio di stile "template.css", però, regola lo stile della pagina quando questa è vista con IE, mentre con altri broswer si vede male (errori di visualizzazione, scorretta centratura delle colonne, eccetera). Ho quindi il file "template1.css", che contiene le istruzioni CSS per la corretta visualizzazione in FF, dando però errori in IE. Stessa cosa per "template2.css", con istruzioni corrette per Opera, e così via.

    La domanda è: come posso fare io per regolare il CSS da attivare sulla pagina? Mi occorrerebbe uno script o qualcosa di simile che riconosce il browser del visitatore e in base a quello attiva "template.css", "template1.css", "template2.css", eccetera.

    Potete aiutarmi!
    Grazie ragazzi!
    In linea di massima questo denota errori di progettazione della pagina.

    Il procedimento da seguire e` il seguente:
    1. Scegliere una DTD moderna: al giorno d'oggi credo che per fare le cose semplici la scelta di XHTML 1.0 Strict sia la piu` ragionevole; un domani potrebbe essere valido anche HTML 5.
    2. Preparare il codice HTML che sia corretto sia dal punto di vista sintattico che semantico: se si sbaglia la sematica diventa difficicle sistemare il CSS.
    3. Sistemare il CSS per i brwoser conformi alle specifiche W3C (praticamente tutti tranne IE): se le cose sono state fatte bene, le differenze tra browser sono minime (impercettibili se non si vedono le pagine assieme). E questo dovrebbe sistemare anche per IE8.
    4. Aggiungere le correzioni al CSS per IE, da chiamare mediante commenti condizionali. Se le cose sono state fatte bene nei punti precedenti, IE8 dovrebbe essere a posto, per cui occorre inserire le correzioni solo per IE7 ed eventualmetne per IE6.

    Se inverti i punti 3 e 4 la cosa diventa piu` difficile, perche` non ci sono commenti condizionali per brwoser diversi da IE (anche perche` gli altri browser sono conformi alle specifiche).

    Ci sono delle eccezioni: i siti che devono "vendere": in quei casi normalmente non basta che le pagine siano uguali: devono anche sfruttare tutte le proprieta` aggiuntive dei singoli browser per essere di grande impatto. In tal caso non basta neppure la rilevazione JS: occorre gestire il tutto lato server, ma quelle cose sono riservate ai professionisti, ed occorre avere a disposizione un server che sia in grado di gestire il tutto.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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 © 2026 vBulletin Solutions, Inc. All rights reserved.