Browserweichen -> Erfahrungen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Browserweichen -> Erfahrungen

    Hoilaaaa,

    ich habe ein kleines Problem mit Browserweichen.

    Als Browserweichenart habe ich mich für eine CSS Weiche entschieden.

    Gut, also mal schnell eine mit Hilfe der Conditional Comments von MS zusammengebaut.
    Jo, und da haben wir schon das Problem. (IE vs WC3)
    Die Conditional Comments ( <!--[if IE 5]>... etc ) sind natürlich nicht WC3 konform.
    Nun habe ich aber sehr viel Zeit investiert um meine Seite "STRICT" zu validieren!

    Habt Ihr noch andere Erfahrungen/Lösungen für eine CSS Weiche mit folgenden Richtungen :

    1. IE6 + mozilla/firefox
    2. IE5 - IE 5-5

    Könnte es sein , daß Browserweichen eine Seite beim Laden ausbremsen?

    Viele Dank und Grüße

    LinOs

  • #2
    hmm,

    du möchtest je nach browser andere css darstellen?

    google mal nach 'css hacks' ...
    e.g. http://www.phespirit.info/cafe/css_hacks.htm

    so etwas?
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      Ja

      Das ganz funktioniert auch problemlos mit folgendem Code:

      <!--[if gta IE 6]>
      <link type='text/css' rel='stylesheet' href='i6_moz.css'>
      <![endif]-->

      <!--[if lte IE 5.5]>
      <link type='text/css' rel='stylesheet' href='ie55.css'>
      <![endif]-->

      <!--[if !IE]>
      -->
      <link type='text/css' rel='stylesheet' href='i6_moz.css'>
      <!--
      <![endif]-->

      Leider ist das nicht WC3 konform.
      Hacks mit @import url(Dateinname) funktionieren nicht korrekt, da ich auch ein dynamisches CSS verwende :
      @import url(dyn_ie6_css.php?farbe=123456... etc) scr\een;
      Die Variablen werden auf diese Art nicht ans Script weitergegeben.

      Gruß

      LinOs
      Zuletzt geändert von LinOs; 16.08.2004, 18:41.

      Kommentar


      • #4
        google mal nach 'css hacks' ...
        e.g. http://www.phespirit.info/cafe/css_hacks.htm
        Brrr. Da wird einem ja schlecht

        Mach es doch mit PHP. Das lässt Dir deinen Output komplett in Ruhe und überträgt nur das, was der jeweilige Browser zu sehen bekommen soll.

        http://de3.php.net/get-browser
        http://techpatterns.com/downloads/ph...n.php#php_full

        Kommentar


        • #5
          Original geschrieben von LinOs
          Leider ist das nicht WC3 konform.
          was'n quatsch ...

          wie der name conditional comments schon sagt, sind das einfache HTML-kommentare - alles, was darin steht, wird von browsern, und vom validator ebenso, gar nicht beachtet - nur der IE kümmert sich darum.

          wenn deine seite damit nicht mehr validiert, dann hast du bei der schreibweise wohl noch was falsch gemacht.

          http://www.drweb.de/html/conditional_comments.shtml
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            @wahsaga

            was'n quatsch ...
            Hochmut kommt vor dem Fall......

            http://msdn.microsoft.com/library/de...omment_ovw.asp

            <![if !IE 5]>
            <p>Please upgrade to Internet Explorer version 5.</p>
            <![endif]>
            Dieser "Conditional Comment" wird definitiv nicht validiert.

            Nach langem probieren habe ich eine valide CSS Weiche zusammen bekommen. Besonders hilfreich war mir diese Seite :
            http://www.lipfert-malik.de/webdesign/tutorial/css.html

            @pekka

            Danke Dir dennoch für die Hilfe.

            P.S. PHP - Weichen sind meines Wissens nach nicht sonderlich zuverlässig!?

            Viele Grüße

            LinOs

            Kommentar


            • #7
              P.S. PHP - Weichen sind meines Wissens nach nicht sonderlich zuverlässig!?
              Warum? Viel zuverlässiger geht nicht. Und ein Browser, der einen gefakten Agent-String liefert (siehe Opera), muß selbst wissen, was er tut.

              Kommentar


              • #8
                Ich glaube der große Vorteil einer PHP Weiche ist deren Output.
                Man erfährt viel mehr Details über den Clienten als bei einer CSS Lösung.

                In meinem Fall mußte ich nur die CSS Patzer der 5er IE Reihe mit einem eigenen Stylesheet umschiffen.

                ------------

                Um die Fehler in der IE 5.x Reihe auszugleichen, habe ich mir mehere Explorer Versionen installiert. Dies funktioniert prima , nur die CSS Weiche schlägt bei den "standalone internet explorern" nicht an.

                Welche Browser sollte man denn im Jahre 2004 überhaupt noch unterstützen?

                Vielen Dank und viele Grüße

                LinOs

                Kommentar


                • #9
                  Code:
                  <!--[if lte IE 5]>
                  <p>Please upgrade to Internet Explorer version 5.</p>
                  <![endif]-->
                  
                  <!--[if !lte IE 5]>
                  <p>Everything went fine</p>
                  <![endif]-->
                  das geht nicht?

                  lte = less than or equal = kleiner oder gleich
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    Das funktioniert natürlich, aber damit wird kein Mozilla etc angesprochen.

                    <!--[if lte IE 5]>
                    <p>Please upgrade to Internet Explorer version 5.</p>
                    <![endif]-->
                    Dies würde ja bedeuten , daß alle IE´s kleiner , gleich IE 5 angesprochen werden.

                    Um Mozzilla auszuschließen, wäre der folgender Weg nötig.

                    <![if !IE ]>
                    <p>Please upgrade to Internet Explorer version 5.</p>
                    <![endif]>
                    Das wird aber nicht validiert, funktioniert aber sonst.

                    Ein :
                    <!--[if !IE ]>
                    <p>Please upgrade to Internet Explorer version 5.</p>
                    <![endif]-->
                    funktioniert nicht, wäre aber wieder valide.

                    Gruß LinOs

                    Kommentar


                    • #11
                      aber warum mozilla ausschließen?

                      was genau wolltest du denn warum machen?
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        Hallo wahsaga,

                        die Weiche sollte folgende Schaltwege beherrschen:

                        IE 6 und höher -> i6_moz.css

                        IE 5.5 oder kleiner -> i5.css

                        Mozzilla / Firefox -> i6_moz.css

                        Meine valide funktionierende Lösung ist nun die Folgende :

                        Code:
                        <!--[if gte IE 6]>
                          <link type="text/css" rel="stylesheet" href="ie6_moz.css">
                          <link type="text/css" rel="stylesheet" href="ie6_moz_css.php">
                        <![endif]-->
                        
                        <!--[if lt IE 6 ]>
                         <link type="text/css" rel="stylesheet" href="ie5_upt.css">
                          <link type="text/css" rel="stylesheet" href="ie5_up_css.php">
                        <![endif]-->
                        
                        <!--[if !IE]> 
                        -->
                         <link type="text/css" rel="stylesheet" href="ie6_moz.css">
                         <link type="text/css" rel="stylesheet" href="ie6_moz_css.php">
                        <!--
                        <![endif]-->
                        Entscheidend scheinen die zusätzlichen --> / <!-- zu sein.

                        Vieleicht hilft die CSS Weiche ja Jemanden in selber Situation weiter.

                        Danke für Eure Mühen

                        Viele Grüße

                        LinOs

                        Kommentar

                        Lädt...
                        X