Media query für Geräte, die schweben

Ich würde gerne verschiedene Verhalten für Browser, die Unterstützung von hover (z.B. desktop-Browser), und diejenigen, die nicht (z.B. touchscreen-Geräte). Speziell möchte ich erklären, einen hover-Status auf Browsern, die es unterstützen, aber nicht für Browser, die nicht, um so zu vermeiden, dass die mobilen Browser emulieren, mit extra Wasserhähne, da diese Pausen anderen Interaktionen auf der Seite - indem Sie nicht die Definition einer hover-Zustand für diejenigen Browser, die diese vermieden wird.

Ich gelesen habe, bis auf die Interaktion Medien-Anfragen Funktion und es sieht aus wie Sie es tun sollten, die trick. Ich würde in der Lage sein, etwas zu tun:

@media (hover: none) {
  /* behaviour for touch browsers */
}

Laut CanIUse es ist auf allen Browsern, die ich unterstützen muss außer IE11 und Firefox.

So, ich fragte mich, ob ich es tun konnte, die andere Weise herum - da die wichtigsten touch-Geräten, die alle unterstützen, dann negieren:

@media not (hover: none) {
  /* behaviour for desktop browsers */
}

Jedoch, dies scheint nicht, überhaupt zu arbeiten.

Pseudocode Beispiel, was ich versuche zu tun:

.myelement {
  /* some styling */
  /* note: no hover state here */
}
@media(this device supports hover) {
  .myelement:hover {
    /* more styling */
  }
}

So, gibt es eine Möglichkeit, diese Arbeit zu machen in der Art gedacht, oder bin ich auf der falschen Spur?

InformationsquelleAutor moogal | 2016-11-10

Schreibe einen Kommentar