Jens: Browserweiche für Opera?

Hallo,

habe eine Website und eine Grafik darin (mit CSS positioniert). Nun wollte ich ein Textfeld über diese Grafik positionieren. Das habe ich so gemacht:

<input type="text" name="searchstring" style="position:absolute; top:80px; left:245px; margin:0; padding:0;">

Kein Problem im IE, kein Problem in Netscape oder Mozilla. In diesen Browsern stimmt die Positionierung. Opera allerdings ignoriert die Angabe völlig und packt das Textfeld einfach unter die Grafik.

Warum das? Ich habe versucht, es mit position:relative zu machen und dann mit top:-30px; ... aber auch da unterscheidet sich Opera von den anderen Browsern.

Ich kriege das Textfeld einfach nicht in allen Browsern korrekt platziert und dachte mir, ich baue für Opera eine Browserweiche (mit CSS). Das geht doch oder?

Aber - wie geht das?

Grüsse
Jens

  1. Hi jens

    Kein Problem im IE, kein Problem in Netscape oder Mozilla. In diesen Browsern stimmt die Positionierung. Opera allerdings ignoriert die Angabe völlig und packt das Textfeld einfach unter die Grafik.

    Warum schreibst du das Textfeld dann nicht im Quelltext über die Grafik, dann erscheint es auf jedenfall (außer du positionierst es mit CSS neu) darüber.

    Ich kriege das Textfeld einfach nicht in allen Browsern korrekt platziert und dachte mir, ich baue für Opera eine Browserweiche (mit CSS). Das geht doch oder?

    Eine Browserweiche für Opera zu bauen ist schwierig, weil Opera es dem Anwender erlaubt auszuwählen als was er sicht identifizeirt, z.B. als IE oder Mozilla. Die einzige Möglichkeit, die alle Opera-Benutzer erfasst, wäre es den Browser auf bestimmte Opera-typische Merkmale zu prüfen.

    Schöne Grüße

    Johannes

    --
    sh:( fo:) ch:] rl:} br:> n4:& ie:{ mo:) va:) de:] zu:) fl:( ss:) ls:]
    Selfcode bei http://emmanuel.dammerer.at/selfcode.html
    1. Hallo Johannes,

      Eine Browserweiche für Opera zu bauen ist schwierig, weil Opera es dem Anwender erlaubt auszuwählen als was er sicht identifizeirt, z.B. als IE oder Mozilla. Die einzige Möglichkeit, die alle Opera-Benutzer erfasst, wäre es den Browser auf bestimmte Opera-typische Merkmale zu prüfen.

      Na das kann ich aber nicht einfach so stehen lassen. Natürlich kann man Opera rausfiltern. Ob es sinnvoll ist, ist wieder was anderes.
      Als reine CSS-Weiche ohne JavaScript:
      http://skop.net/self/css_browserweiche.html
      http://www.albin.net/CSS/OwenHack.html
      http://centricle.com/ref/css/filters/

      Grüße aus Nürnberg,
      HarryS

      --
      Dank des SELFcodes weiß ich endlich was ich als Signatur nehmen soll.
      sh:( fo:) ch:? rl:? br:> n4:° ie% mo:) va| de:> zu:| fl:( ss:{ ls:# js:|
      1. Hi Harry

        Eine Browserweiche für Opera zu bauen ist schwierig, weil Opera es dem Anwender erlaubt auszuwählen als was er sicht identifizeirt, z.B. als IE oder Mozilla. Die einzige Möglichkeit, die alle Opera-Benutzer erfasst, wäre es den Browser auf bestimmte Opera-typische Merkmale zu prüfen.

        Na das kann ich aber nicht einfach so stehen lassen. Natürlich kann man Opera rausfiltern. Ob es sinnvoll ist, ist wieder was anderes.

        Ich habe nicht behauptet, dass man Opera nicht rausfiltern kann. Ich habe nur behauptet, dass man Opera nicht immer mit navigator.appName erkennen kann.

        Als reine CSS-Weiche ohne JavaScript:
        http://skop.net/self/css_browserweiche.html
        http://www.albin.net/CSS/OwenHack.html
        http://centricle.com/ref/css/filters/

        Bei keiner dieser Adressen wird überprüft, ob der Browser Opera _ist_. Es wird nur überprüft, ob der Browser die Eigenschaften vom Opera hat. (Ist in der Realität natürlich das gleiche.) Ich hab ja auch gesagt, mann kann "den Browser auf Opera-Typische Merkmale" überprüfen, so wie es dort geschieht.

        Schöne Grüße

        Johannes

        --
        sh:( fo:) ch:] rl:} br:> n4:& ie:{ mo:) va:) de:] zu:) fl:( ss:) ls:]
        Selfcode bei http://emmanuel.dammerer.at/selfcode.html
        1. Hallo Johannes,

          Ich habe nicht behauptet, dass man Opera nicht rausfiltern kann. Ich habe nur behauptet, dass man Opera nicht immer mit navigator.appName erkennen kann.

          Diese Aussage ist natürlich richtig, denn eine JS-Weiche anhand des navigator.appName zu machen ist die unsicherste Sache seit der Erfindung der Browser. Als Defaultwert ist bei der Installierung von Opera sogar der IE eingestellt.

          Als reine CSS-Weiche ohne JavaScript:
          http://skop.net/self/css_browserweiche.html
          http://www.albin.net/CSS/OwenHack.html
          http://centricle.com/ref/css/filters/

          Bei keiner dieser Adressen wird überprüft, ob der Browser Opera _ist_.

          Auch das ist richtig.

          Es wird nur überprüft, ob der Browser die Eigenschaften vom Opera hat. (Ist in der Realität natürlich das gleiche.)

          Eben.

          Ich hab ja auch gesagt, mann kann "den Browser auf Opera-Typische Merkmale" überprüfen, so wie es dort geschieht.

          Aber bittebittebitte nicht mit dem navigator.appName. Wenns ne JS Weiche für Opera sein muß dann mit:

          if(window.opera) {
             alert("Ich bin ein OPERA - garantiert!");
           }

          der einzig sichere Weg (zur Zeit) um Operas zu erkennen.

          Im Prinzip sind wir uns ja einig :)

          Grüße aus Nürnberg,
          HarryS

          --
          Dank des SELFcodes weiß ich endlich was ich als Signatur nehmen soll.
          sh:( fo:) ch:? rl:? br:> n4:° ie% mo:) va| de:> zu:| fl:( ss:{ ls:# js:|