Verificare la presenza di Internet Explorer. PHP vs cioè i commenti condizionali?

StackOverflow https://stackoverflow.com/questions/1654698

  •  11-09-2019
  •  | 
  •  

Domanda

Così ho deciso di rompere il mio CSS in un file IE6-e-IE7-only. Avrò le regole CSS in questo file che prendono di mira IE6 e IE7 solo, come ad esempio:

div {
    *color: red; /* target ie7 and below */
    _color: green; /* target ie6 and below */
}

Se possibile, io preferisco usare PHP con $_SERVER['HTTP_USER_AGENT'] per rilevare il browser, piuttosto che ad esempio i commenti condizionali.

Capisco che visitatore può "spoof" il loro user-agent e la pretesa di essere qualunque navigatore che vogliono, ma qual è il parere generali sull'uso di PHP al posto di IE commenti condizionali per rilevare il browser?

È stato utile?

Soluzione

IMHO - utilizzare i commenti condizionali di IE. sono piuttosto molto più veloce rispetto alla elaborazione sul server! Pensate a questo, se si dispone di 100 clienti di elaborazione questo sul vostro server, il server verranno rallentati rispetto al delegando a che 100 clienti a rendere e di processo.

Non è degno il carico del server, anche se in cache e non rendono sul server ogni volta.

Altri suggerimenti

Vuoi che il confronto stringa ogni volta che viene richiesta una pagina? Io non lo farei. Avrei lasciato questo fino al browser.

In alternativa, che ha lavorato molto bene per me, si potrebbe usare css_browser_selector.js . Con esso, il vostro foglio di stile sarebbe più simile a questo:

.ie7 div {
    color: red; /* target ie7 */
}

.ie6 div {
    color: green; /* target ie6 */
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top