Ich bastle gerade eine alternative Seitenvariante für Smartphones und überlege, welche Methode zur Geräteerkennung die beste ist.
Natürlich hängt das auch vom Projekt ab, aber welche Methode nutzt ihr denn für gewöhnlich, bzw. würdet ihr nutzen?
- CSS Media Queries
Vermutlich eher für sehr geringe Darstellungsunterschiede. Funktioniert leider nicht in allen Smartphones, weshalb manchmal die normale Variante angezeigt wird.
- PHP/ .htaccess: User-Agent Header
Häufig in Kombination mit JS (Ajax). Leitet entweder auf eine komplett andere Seite (extra für Moiltelefone) um oder ändert kleinere Teile des HTML-Codes, z.B. die URL des CSS-, oder JS-Codes. Benötigt leider eine Liste mit mobilen Browsern, da nur bekannte Browser weitergeleitet werden können. Funktioniert nicht, wenn der Nutzer den Header ändert oder nicht mitschicken lässt.
- JavaScript: Bildschirmgröße
Mittels JS die verfügbare Bildschirmgröße (screen.height & screen.width) auslesen, um Rückschlüsse auf das Gerät zu ziehen und auf eine andere Seite weiterzuleiten.
- Link im Footer (oder an anderer Stelle)
Die simpelste Variante, welche es dem Nutzer offen lässt, welche Ansicht er nutzen will. Häufig ist es jedoch recht schwer, den Link auf einem Smartphone zu finden, während die normale Seitenansicht geladen ist.
-Subdomain m.example.com
Häufig in Verbindung mit einer der anderen Techniken. Erlaubt Nutzern, zwischen den Darstellungen zu wechseln und eine eventuelle Fehlweiterleitung wieder rückgängig zu machen.
Ich persönlich neige zu der Variante, mit JS die Bildschirmgröße auszulesen und weiterzuleiten. Kombiniert mit der Subdomain können Fehler durch den Nutzer wieder korrigiert werden.