Logo JsDir.com [niente]
Bring Your Site To Life!!!
10 Settembre 2010 - 22:53:47 - 21 scripters on-line! - La tua posizione nel sito: StaffScripts/Script072/
BedInLecce
StaffScripts
Caricare un CSS adatto al browser

Autore: Riccardo Data: 30/05/2002 Downloads: 746 Voto: 2,5/5 Download P r o v a


Caricare un CSS adatto al browser

      Uno dei più comuni problemi da affrontare nell'uso dei CSS è il diverso modo con cui i browser visualizzano i testi: oltre alle incompatibilità più eclatanti (per esempio il fatto che Netscape/Mozilla non colorano tutto il background come fa Explorer) la cosa più fastidiosa è a mio avviso il diverso "corpo" con cui vengono resi i caratteri.
      Basta guardare JsDir con due browser diversi per rendersi conto della diffrenza.

      L'unica soluzione possibile è costruire due o più fogli di stile diversi e far si che il browser scelga da se quello che gli compete.
<HTML>
<HEAD>
   <TITLE>Carica CSS diverso per browser</TITLE>
<SCRIPT>
<!--
if (document.layers)
   document.write("<LINK HREF='n4.css' REL='stylesheet' TYPE='text/css'>")
      else
         if (document.all)
            document.write("<LINK HREF='ie.css' REL='stylesheet' TYPE='text/css'>")
         else
            if (!document.all && document.getElementById)
               document.write("<LINK HREF='mz.css' REL='stylesheet' TYPE='text/css'>")
            else
               document.write("<LINK HREF='xx.css' REL='stylesheet' TYPE='text/css'>")
//-->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#ffffff">
   <DIV CLASS="testocentrato">
      Se usi Netscape4 questo testo sarà rosso, 
      se usi InternetExplorer sarà blu, 
      se usi Mozilla/Netscape6 sarà verde, 
      altrimenti sarà nero
   </DIV>
</BODY>
</HTML>

      Lo script va inserito fra i tag <HEAD> ... </HEAD> e non fa altro che scrivere il classico <LINK REL> con cui normalmente si carica un foglio di stile esterno.
      E' una semplice sequenza di if () ... else ... che inizia controllando se il browser è Netscape 4.x, altrimenti controlla se il browser è InternetExplorer, se anche questo controllo fallisce verifica che non si stia usando Netscape6/Mozilla.
      Se nessuna di queste tre condizioni è soddisfatta scrive un foglio di stile generico ("xx.css"). Ad esempio ho volutamente tralasciato il controllo di Opera per il quale verrà usato il foglio di stile generico.
      Volendo includere il browser nel controllo sarà sufficiente aggiungere && browser.indexOf("opera")!=-1 ad una qualsiasi delle 3 condizioni per riutilizzare uno dei fogli, o aggiungere un ulteriore if () alla catena di condizioni. Analogamente si può procedere per includere altri browser.

      



Per navigare correttamente il sito è necessario abilitare i cookies.
Enjoy Open Source!
ffx80wh1

    javascript
 
 
 
         Stampa
          Segnala
          Preferiti





thb1202