fragender: handheld ??

Hallo zusammen!

Ich wollte mal das Erstellen einer eigenen CSS Datei für die Darstellung auf einem Handy probieren.

Gebe ich in der HTML Datei eine extra CSS Datei an:
<link rel="stylesheet" type="text/css" media="handheld" href="/css/handheld.css" />
lädt mein iPhone dennoch die normale CSS Datei...

Warum?

Bei ganz vielen Seiten ist mir aufgefallen, dass eine extra Darstellung für das iPhone geboten wird. Meist sieht die URL dann so aus:
iphone.adresse.de

Wie kann das überprüft werden?

Habt Ihr schon Erfahrungen damit sammeln können? Danke an Euch!

  1. Hi,

    Gebe ich in der HTML Datei eine extra CSS Datei an:
    <link rel="stylesheet" type="text/css" media="handheld" href="/css/handheld.css" />
    lädt mein iPhone dennoch die normale CSS Datei...

    Warum?

    Weil Apple sich entschieden hat, den Safari auf dem iPhone media=handheld nicht berücksichtigen zu lassen - wohl aus dem Gedanken heraus, dem Nutzer auch auf diesem Gerät ein "vollwertiges" Internet zu bieten, und keine "abgespeckte" Version, wie sie viele Seiten in eher stiefmütterlicher Weise für Mobilgeräte bereitstellen.

    Bei ganz vielen Seiten ist mir aufgefallen, dass eine extra Darstellung für das iPhone geboten wird. Meist sieht die URL dann so aus:
    iphone.adresse.de

    Wie kann das überprüft werden?

    Wie kann was überprüft werden?

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
    1. Hey ChrisB,

      ich habe gerade noch diesen Link hier im Forum gefunden:
      http://coding.binon.net/server/browser.htm

      Das scheint ja zu klappen, habe es gerade mal ausprobiert.

      Dann müsste ich nur noch dem User eine Möglichkeit bieten, trotzdem die normale Seite anzeigen zu lassen - dabei stellt sich die Frage: unterstützen alle mobilen Geräte Cookies? Oder hast du eine Idee, wie ich das anders angehen könnte?

      1. Hi,

        Dann müsste ich nur noch dem User eine Möglichkeit bieten, trotzdem die normale Seite anzeigen zu lassen

        Wenn es geht (und es sich im wesentlichen erstmal nur um eine iPhone-Version handeln soll), dann kann man auch einfach "media=screen" für "normale Clients" verwenden, und die dortigen Werte mit einer speziellen CSS-Datei für iPhone & Co. wieder überschreiben. Der Safari unterstützt bereits "media queries", d.h., er kann von sich aus ein eigenes Stylesheet passend zur Auflösung bekommen.

        Meine Browsererkennung ist *dann* sinnvoll, *wenn* möglichst viele mobile Clients unterstützt werden sollen - also nicht nur Browser mit "media queries"- oder "handheld"-Unterstützung, sondern die vielen mobilen Clients, die weder das eine, noch das andere unterstützen.

        dabei stellt sich die Frage: unterstützen alle mobilen Geräte Cookies? Oder hast du eine Idee, wie ich das anders angehen könnte?

        Auch Desktop-Clients unterstützen nicht alle Cookies (bzw. es kann deaktiviert werden). Alternativ kann man aber Daten in top.name (dem (obersten) Fensternamen) speichern. Allerdings können Desktop-Clients mit mehreren Fenstern arbeiten - Mobile-Clients i.d.R. nicht.

        Weitere Alternative: Serverseitige "Session".

        Gruß, Cybaer

        --
        Zweck des Disputs oder der Diskussion soll nicht der Sieg, sondern der Gewinn sein.
        (Joseph Joubert, Schriftsteller)
  2. @@fragender:

    Gebe ich in der HTML Datei eine extra CSS Datei an:
    <link rel="stylesheet" type="text/css" media="handheld" href="/css/handheld.css" />
    lädt mein iPhone dennoch die normale CSS Datei...

    Warum?

    A List Apart: Return of the Mobile Style Sheet

    Live long and prosper,
    Gunnar

    --
    Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)