Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    150

    richiamare css diversi con js

    Ciao a tutti!
    siccome sono agli inizi, c'è qualcuno che potrebbe dirmi se con uno script riuscirei a far aprire una pagina html con stili diveri (es. "stile1.css" e "stile2.css") a seconda del browser con cui la guardo ??

    Sapete farmi anche qualche esempio??

    Grazie

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    codice:
    document.write('<style type="text/css">');
    
    if (document.all) //IE
      document.write(' @import url(ie.css)');
    }
    
    else {
      document.write(' @import url(otherbestbrowser.css)');
    }
    
    document.write('</style>');
    Se lo metti nell header dovrebbe funzionare...
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    In linea di massima non e` una bella idea. Comunque se ne e` parlato nel forum sui CSS pochi giorni fa.

    Ad ogni modo lo sniffing si puo` fare in modi diversi. Ecco un esempio (non funziona in XHTML Strict)
    codice:
    <script type="text/javascript">
    if(document.all) {
      document.write("<link type='text/css' rel="stylesheet' href='CSS_IE.css' />");
    } else if(document.getElementById) {
      document.write("<link type='text/css' rel="stylesheet' href='CSS_STD.css' />");
    } else {
      document.write("<link type='text/css' rel="stylesheet' href='CSS_MIN.css' />");
    }
    Chiaramente va inserito nella <head> di un documento.
    CSS_IE sta per Internet Explorer, CSS_STD sta per i browser standard (moderni, non IE), CSS_MIN sta per i browser non conformi, tipicamente NN4 e altri browser vecchi.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    domanda:
    di solito non utilizzo questo metodo di eseguire l'import o il link rel ma preferisco esplodere direttamente il css all'interno della pagina (esempio con asp)

    <style type="text/css">

    </style>
    in style.asp faccio tutto quello che devo fare

    è + conveniente un metodo del genere o utilizzare import etc?

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Hai fatto la domanda in un forum di JS, e ti e` stato risposto con le tecniche che vengono usate lato client (ambedue utilizzano JS: la mia usa il tag <link>, quella di fcaldera l'import dello stile).

    La tua ultima proposta e` invece una tecnica lato server (per la precisione la tecnica e` SSI - server side include), ma la stessa sintassi si trova anche in ASP, mentre in PHP credo ci sia qualche carattere diverso (ma non conosco PHP).

    Usare una tecnica server side puo` essere valido, ma occorre che il server conosca il browser, quindi non puo` essere usata nella prima patgina del sito (o comunque occorre una pagina velocissima intermedia perche` il server possa conoscere il sistema cui sta inviando i dati).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    si , parliamo di SSI ma non era una domanda lato server,o meglio mi stavo solo domandando se cambia qualcosa a livello client tra il caricamento tramite fonte esterna (import o src) o se esplodendo i marcatori css. A livello di peso di pagina non dovrebbe cambiare nulla, mi domandavo se avesse vantaggi o è assolutamente uguale.

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Se parli di SSI siamo lato server. Quindi e` una cosa diversa, che necessita di competenze e strumenti diversi.

    Le differenze a livello di peso sono trascurabili (pochi byte di differenza).
    Eventualmente ci puo` essere una piccola differenza nel carico del server (diventa importante in caso di siti molto frequentati).

    Dal punto di vista dell'utente cambia poco.

    Le differenze a livello logico invece ci sono e sono importanti, ed e` essenziale che il programmatore lo abbia presente, altrimenti poi si finisce con il tentare di avviare un programma lato server con un comando JS (questa settimana ce ne sono gia` due o tre, e non si riesce a far capire la logica che ci sta dietro).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  8. #8
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    Originariamente inviato da Mich_
    ..
    Eventualmente ci puo` essere una piccola differenza nel carico del server (diventa importante in caso di siti molto frequentati).
    Tramite useragent (lato-server intendo) mi ero sempre stampato gli stili che mi servivano ma effettivamente non avevo pensato al carico della chiamata include.
    Grazie

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.