Markus Trusk: /HTML Was führt Opera hier auf?

Hallo,
Ich habe ein seltsames Problem bemerkt, was mir nicht klar ist. Bei einem Layout, dass ich gerade mache, habe ich festgestellt, dass oftmaligem Neuladen hintereinander der Seite die Tabelle plötzliche völlig verschoben ist, sodass die erste Zelle statt 170px jetzt so um die 400px hat und der Rest überhaupt irgendwie dargestellt wird. Das Problem tritt aber nur auf, wenn ich diese große Anzahl von Text Zeilen (in Forum von Text Text<br />) verwende, wie sie jetzt auf der Seite zu sehen ist. Habe ich nur ca ein Drittel von diesen Zeilen, macht Opera diesen Mist nicht. (genau deswegen kann ich Opera nicht ausstehen, weil er oft Mist dieser Art macht). IE und Mozilla stellen es korrekt dar. Ich habe Opera 7.1. Ich hoffe das Problem tritt dann nicht auch auf, wenn mal "richtiger" Text dortsteht und alles dynamisch erzeugt wird. Hier die Bsp.-Seite:

http://testboard.acid4u.com/postinglesen.html

Markus Trusk.

  1. Hallo Markus,

    ... festgestellt, dass oftmaligem Neuladen hintereinander ...

    kannst du das bitte näher beschreiben? Ist es beim ersten mal ok, beim zweiten mal auch, später dann nicht mehr?

    ... völlig verschoben
    http://testboard.acid4u.com/postinglesen.html

    Opera 7.23 völlig normal.

    Ich hoffe das Problem tritt dann nicht auch auf, wenn mal "richtiger" Text dortsteht

    ja, das kann natürlich sein. Opera macht da einen Unterschied. Er stellt Blindtext anders dar als "richtigen" Text ;-)

    Grüße,

    Jochen

    1. Hi,

      kannst du das bitte näher beschreiben? Ist es beim ersten mal ok, beim zweiten mal auch, später dann nicht mehr?

      es kommt drauf an. Manchmal beim ersten Laden völlig verschoben. Nach 20x auf F5 hämmern sieht es normal aus. Nach weiterem Reload wieder verschoben.

      Markus Trusk.

      1. kannst du das bitte näher beschreiben? Ist es beim ersten mal ok, beim zweiten mal auch, später dann nicht mehr?

        es kommt drauf an. Manchmal beim ersten Laden völlig verschoben. Nach 20x auf F5 hämmern sieht es normal aus. Nach weiterem Reload wieder verschoben.

        Ich frag mich wer, warum 20mal reload drücken soll?

        Daneben halte ich das HTML Layout auch nicht sonderlich gelungen. du hast mehrfach ineinander verschacheltete DIV in denen dann Tabellen sind mit jeweils fixen Breiten. Das spricht nicht gerade für ein sauberes Design.

        Du kannst die z.b. die Links in dem Bereich #button#links und #button#forenbuttons auch als DIV's definieren, die du mit float:left nebeneinander stellst und der nächste Bereich muss dann mit clear:both starten.

        Oder auch das die Links in den Bereichen Klassen zugewiesen bekommen ist nicht notwendig. Du kannst einfach mit

        #bereich a:link
        {
        .....
        }

        die einzelnen Elemente gestalten.

        Es gäbe noch einige mehr optionen die Struktur des Dokumentes zu verbessern. Du solltest versuchen die Idee, von dem trennen des Inahltes und des Designs besser umzusetzten, so wie es jetzt ist, ist es ein MischMasch ohne irgendeine Struktur.

        Struppi.

        1. Hi,

          Ich frag mich wer, warum 20mal reload drücken soll?

          Muss man auch gar nicht. Opera stellt es manchmal schon beim ersten Laden falsch dar. Und nach ein paar Reloads wieder richtig, bzw wieder falsch.

          Du kannst die z.b. die Links in dem Bereich #button#links und #button#forenbuttons auch als DIV's definieren, die du mit float:left nebeneinander stellst und der nächste Bereich muss dann mit clear:both starten.

          Ja, das hatte ich alles schon, aber im Endeffekt traten dann größere Probleme auf, als wenn ich es mit Tabellen mache.

          Oder auch das die Links in den Bereichen Klassen zugewiesen bekommen ist nicht notwendig. Du kannst einfach mit

          #bereich a:link
          {
          .....
          }

          Ok das kenne ich noch nicht. Allerdings bleibt es ja nicht bei dem einen Layout, sondern ich werde die Klassen auf mehreren Seiten verwenden, wodurch sich wieder die Frage stellt, ob es nicht doch günstiger wäre, es so zu belassen, wie es ist.

          Markus Trusk.

          1. Du kannst die z.b. die Links in dem Bereich #button#links und #button#forenbuttons auch als DIV's definieren, die du mit float:left nebeneinander stellst und der nächste Bereich muss dann mit clear:both starten.

            Ja, das hatte ich alles schon, aber im Endeffekt traten dann größere Probleme auf, als wenn ich es mit Tabellen mache.

            welche denn?

            Oder auch das die Links in den Bereichen Klassen zugewiesen bekommen ist nicht notwendig. Du kannst einfach mit

            #bereich a:link
            {
            .....
            }

            Ok das kenne ich noch nicht. Allerdings bleibt es ja nicht bei dem einen Layout, sondern ich werde die Klassen auf mehreren Seiten verwenden, wodurch sich wieder die Frage stellt, ob es nicht doch günstiger wäre, es so zu belassen, wie es ist.

            Wie gesagt das Konzept von HTML/CSS ist auf deiner Seite nicht sonderlich umgesetzt. Deine Bereiche sind relativ sinnfrei ineinander verschachtelt und enthalten sehr willkürlich irgendwelche HTML Tags. Es ist aber keine Struktur erkennbar, die beschreibt, was im Dokument die einzelnen Elemente darstellen sollen

            du hast ein Dokument
            evtl. mit verschiedenen Bereichen
            in diesen Bereichen werden Elemente ausgezeichnet.

            <div id="Menu">

            <h1>2. Linkliste im Menü</h1>
            <ul>
            <li>Link 1</li>
            <li>Link 2</li>
            <li>Link 3</li>
            </ul>

            <h1>2. Linkliste im Menü</h1>
            <ul>
            <li>Link 1</li>
            <li>Link 2</li>
            <li>Link 3</li>
            </ul>

            </div>

            <div id="inhalt">

            <h1>Überschrift</h1>

            <p>absatz
            ....

            </div>

            <div id="fusszeile">
            ....
            </div>

            wenn du dein Dokument komplett so durchstrukturierst, brauchst du Klassen nur noch für wenige Elemente, die ausnahmsweise mal vorkommen, z.b.
            <p class="hinweis">Eine Meldung</p>

            Es ist auf jeden Fall in der jetzigen Version schwieriger ein Design anzupassen als wenn du die Bereiche designest und nicht die einzelnen Elemente.

            Struppi.

            1. Hi,

              Ja, das hatte ich alles schon, aber im Endeffekt traten dann größere Probleme auf, als wenn ich es mit Tabellen mache.

              welche denn?

              Ich wollte rechts neben dem letzten Link einen Bereich mit einem Hintergrund einrichten, der den letzten Rest bis zum Bildschirm ausfüllen soll, aber ich weiß nicht mehr genau warum, aber es war ziemlich unmöglich. Es waren auch noch kleine Sachen wegen dem Mouseovereffekt bei den Tabellenzellen, aber so genau weiß ich das jetzt nicht.

              Wie gesagt das Konzept von HTML/CSS ist auf deiner Seite nicht sonderlich umgesetzt. Deine Bereiche sind relativ sinnfrei ineinander verschachtelt und enthalten sehr willkürlich irgendwelche HTML Tags. Es ist aber keine Struktur erkennbar, die beschreibt, was im Dokument die einzelnen Elemente darstellen sollen

              Es geht aber nicht anders.
              zB kann ich das Rufzeichen nie im Leben im übergeordenten div platzieren, da jedesmal die Rufzeichengrafik um ein paar Pixel nach oben oder nach unten verschoben ist, somit mit einem extra div absolute zum Elternelement platziert gelöst. Dasselbe gilt auch für die Infoschrift. Man konnte sie nie so exakt zum Hintergrund ausrichten, dass sie genau in der Mitte ist.
              Desweiteren muss ich die inneren divs bei einer Neugestaltung nicht mehr ändern. Bis vor kurzem habe ich es noch so gemacht, dass ich alles in einem extra div nacheinander ausrichtete, aber so konnte ich 10 divs neu ausrichten, wenn ich das Layout ein wenig verändern wollte, was jetzt nicht mehr der Fall ist.
              Desweiteren ist das ganze Konstrukt sowieso ziemlich "heikel", weil hier der IE auch ein position:fixed simuliert, und deswegen möchte ich eigentlich das div "menu" als Container für den oberen Bereich verwenden. Ich will ja nicht, dass mir der IE da doch noch irgendwie dazwischenpfuscht.

              Markus Trusk.

  2. Hallo!

    Habe ich nur ca ein Drittel von diesen Zeilen, macht Opera diesen Mist nicht. (genau deswegen kann ich Opera nicht ausstehen, weil er oft Mist dieser Art macht).

    Ich kann mit meinem Opera 7.21 das beschriebene Problem nachvollziehen (nach dem ca. 20 Reload wollte ich noch das Gegenteil schreiben).
    Ich hatte bei einer Seite (allerdings mit sehr wenig Text) das gleiche Problem ... valider Quelltext (bei Dir ja ohnehin der Fall) und ein paar (unmotivierte) divs haben geholfen.

    Beste Grüße
    Viennamade

    1. Hallo,

      Ich kann mit meinem Opera 7.21 das beschriebene Problem nachvollziehen (nach dem ca. 20 Reload wollte ich noch das Gegenteil schreiben).

      7.22 braucht bei mir nur 12 Reloads

      Grüße
      Marcus

    2. Hallo,

      also eigentlich macht er das Problem auch bei wenig Text. Komischerweise nur dann, wenn ich die Adresse oben in der URL Bar eingebe, und Enter drücke. Reloade ich mit F5, besteht das Problem bei wenig Text.
      Eine Lösung wäre, den Tabellenhead mit Prozentangaben zu belegen, also zB 15%, 70%, 15%, somit hat Opera für jede Spalte eine Breite und stellt es dann bei Prozentangaben zumindest richtig dar. Warum ich es aber mit Prozentangabe nicht lösen will, ist die Tatsache, dass Leute Grafiken posten könnten, die über die Breite hinausgeht, und die linke Spalte sehr schmal zusammengepresst wird, was nicht gut aussieht.
      Ich wundere mich nur, was für Opera so schwer zu verstehen ist, wenn ich die Tabelle auf 100% Breite setze, die erste Spalte 170px, und die letzte 200px. Jeder normale Browser (sogar der IE) kann sich denken, dass der mittlere Teil dann dynamisch sein soll, aber Opera ist anscheinend noch nicht so weit.

      Markus Trusk.

  3. Hallo,

    Bei mir ist es nachvollziehbar. Hast du schon mal daram gedacht, das Ganze an Opera als Bug zu melden?
    http://www.opera.com/support/bugs/
    Grüße
    Marcus

    1. Hallo,

      Bei mir ist es nachvollziehbar. Hast du schon mal daram gedacht, das Ganze an Opera als Bug zu melden?

      Es ist ja nicht nur das. Opera kann bis einschließlich Version 7.1, die ich habe, nicht mal mit dynamischen <col> Angaben umgehen. Anscheinend hat Opera leider insgesamt ziemliche Probleme bei Tabellen. :(

      Markus Trusk.

  4. Hallo,

    ich kenne das Problem auch, kann hier auf Arbeit nicht mit dem Opera testen, aber ich betreue eine Seite, wo das Grundgerüst eine Blindtabelle ist aus zwei Spalten für Navigation und Inhalt. Wird die Seite oft genug neu geladen, so verschwindet die linke Spalte schlicht komplett. Ist dann aber nach kurzer Pause und erneutem Reload wieder zurückzuholen.

    Hab in den known issues nichts gefunden bei Opera, ggf. mal in deren NGs posten?

    Gruss, Thoralf

    --
    Sic Luceat Lux!