Non c'è modo per ottenere questo risultato senza ricorrere a Javascript, allo stato attuale.
Come ha detto @easwee, Modernizr è una libreria JS ben studiata che si concentra sul rilevamento di funzionalità. Puoi utilizzare il test touch
per il tuo caso d'uso.
Se non avete bisogno di tutte le campane e fischietti di Modernizr, è possibile effettuare le seguenti operazioni:
A) Caricare il seguente JS già nel tag <body>
, come si può:
<script type="text/javascript">
if(!!window.TouchEvent) body.className += " touch-enabled ";
</script>
B) Scrivi il tuo CSS. Dal momento che Gecko utilizza una media query per informarti di disponibilità contatto, dovrete ingannare il CSS specifica-touch, in questo modo:
BODY.touch-enabled DIV.foo
{
/* touch-specific CSS */
}
@media screen and (-moz-touch-enabled)
{
DIV.foo
{
/* touch-specific CSS */
}
}
Se il codice per-selettore è identico in entrambe le circostanze, GZIP dovrebbe ottimizzare via parte della duplicazione. (Stai usando la compressione, spero.)
fonte
2011-06-16 17:47:51
https://github.com/Modernizr/Modernizr/blob/master/feature-detects/touchevents.js – eimaj