<css>t ihr noch, oder <table>t ihr schon?



  • Das Problem ist, das der Typ keine Ahnung von CSS hat.
    Tabellen braucht man nurnoch wenn man Tabellen braucht. Alles andere lässt sich mit CSS realisieren.





  • ich habe zwar keine ahnung von css, aber wie eine trennung von inhalt und layout sieht das mal nicht aus. so gar nicht.

    <div class="grid"> 
      <div class="row"> 
        <div class="image"> 
          <img src="images/photo1.jpg" alt="A Lily" /> 
          <p>A lily in the gardens of The Vyne Country House</p> 
        </div> 
        <div class="image"> 
          <img src="images/photo3.jpg" alt="A Fuchsia plant" /> 
          <p>Fuchsia plant in my garden</p> 
        </div> 
      </div>
    


  • In CSS bin ich auch nicht sonderlich bewandert, aber in dem von Dir gezeigten fehlen noch sämtliche definitionen für das Layout. Da geht schon noch was.


  • Mod

    YouEatTheCockatriceCorpse schrieb:

    ich habe zwar keine ahnung von css, aber wie eine trennung von inhalt und layout sieht das mal nicht aus. so gar nicht.

    jo, das ist ein marketing gag.
    du hast mit css eine trennung zwischen layout und content die ok ist - nicht gut, aber auch nicht wirklich total schlecht.

    gibt nicht viele tools wo du eine bessere trennung hinbekommst... also ist css allen in allem ganz gut.



  • kommt mir so vor, als ob der Kerl wegen seines Tabellenlayouts geflamet wurde und nicht einsieht, dass sie recht haben

    Man verwendet CSS nicht, um ein tabellenartiges Layout zu erstellen. Das machen meist die, die gerne Tabellen verwenden würden, aber Angst haben, geflamet zu werden. (was nicht heißt, dass man es nicht machen darf)
    CSS verwendet man, weil man damit das Aussehen der Seite komplett von seinem Inhalt trennen kann (was mit Tabellen nicht möglich ist)
    Eine simple Änderung am CSS kann so die ganze Seite ändern, ohne das man die .html-Datei anfassen muss.

    Was macht er zum Beispiel, wenn er während der Entwicklung seiner Seite merkt, dass er die rechte Spalte lieber als Box mit umfließenden Text hätte? Oder die Navigationsleiste horizontal über dem Inhalt anstatt vertikal daneben?



  • zwutz schrieb:

    CSS verwendet man, weil man damit das Aussehen der Seite komplett von seinem Inhalt trennen kann (was mit Tabellen nicht möglich ist)

    Autsch. Sorry, aber das hatten wir doch schon: Reiner Marketingspruch. Du kannst mit CSS genau so wenig wie mit Tabellen das Aussehen vom Inhalt trennen. Nur ein Stückweit besser und ein gutes Stück weit anders. CSS und Tabellen haben halt einen grundsätzlich verschiedenen Ansatz.

    zwutz schrieb:

    Was macht er zum Beispiel, wenn er während der Entwicklung seiner Seite merkt, dass er die rechte Spalte lieber als Box mit umfließenden Text hätte? Oder die Navigationsleiste horizontal über dem Inhalt anstatt vertikal daneben?

    Er ändert seine Tabelle? Völlig unproblematisch, in 95% aller Fälle.

    Ich bin allgemein kein Freund von Tabellenlayouts, aber bei vielen Argumenten vieler CSS-Fetischisten kann ich wirklich nur den Kopf schütteln. Jeder sagt immer: Tabellen nur für Tabellen. Punkt. Wenn das Layout der Gesamtwebseite aber nun einmal ein tabellarisches Layout ist, was zum Teufel spricht dann dagegen, eine Tabelle dafür zu verwenden?
    Letztlich hat der Mann nicht Unrecht: Es gibt Layouts, die mit CSS ein einziger Krampf sind, während sie mit einer einzigen Tabelle völlig problemlos, flexibel und sauber umgesetzt werden können. Auch, dass Tabellenzeilen- und spalten untereinander eine Beziehung haben, während <div>s primär in Relation zu ihrem Container stehen, stimmt.

    Leute, öffnet doch einfach mal die Augen. Tabellen sind nicht böse und CSS sind kein Allheilmittel. Tabellen haben Stärken und Schwächen, CSS auch.

    Also bitte nicht einfach auf der "Ist so und so" - "Isses ja gaaaar nicht!!!" - Schiene argumentieren, sondern belegbare Argumente bringen.

    Danke ...



  • árn[y]ék schrieb:

    Autsch. Sorry, aber das hatten wir doch schon: Reiner Marketingspruch. Du kannst mit CSS genau so wenig wie mit Tabellen das Aussehen vom Inhalt trennen. Nur ein Stückweit besser und ein gutes Stück weit anders. CSS und Tabellen haben halt einen grundsätzlich verschiedenen Ansatz.

    Entschuldige, dass ich nicht jede Diskussion, die es hier gab, mitverfolgt habe.
    Klar, man kann auch mit CSS Bockmist bauen und das Layout in den Inhalt einbauen, was im Endeffekt hässlicher ist, als ein entsprechendes Tabellenlayout, aber davon war nicht die Rede.
    Ein gut durchdachtes CSS-Layout trennt den Inhalt sehrwohl vom Layout... Aber Gegenbeweise darfst du gerne bringen, bin immer offen für sowas

    Er ändert seine Tabelle? Völlig unproblematisch, in 95% aller Fälle.

    Und was, wenn man die nicht ändern kann? Nicht immer kommt Inhalt und Layout von der selben Person. Noch problematischer wird es, wenn man dem User die Wahl über das Aussehen geben will (was aber eher selten in dem Ausmaß vorkommt). Das kann man dann aber wohl zu den 5% zählen, oder?

    Ich bin allgemein kein Freund von Tabellenlayouts, aber bei vielen Argumenten vieler CSS-Fetischisten kann ich wirklich nur den Kopf schütteln. Jeder sagt immer: Tabellen nur für Tabellen. Punkt. Wenn das Layout der Gesamtwebseite aber nun einmal ein tabellarisches Layout ist, was zum Teufel spricht dann dagegen, eine Tabelle dafür zu verwenden?

    Screenreader haben so ihre Probleme mit Tabellen. Es geht zwar in einigen Fällen auch so, aber sobald das Layout etwas komplexer wird als das übliche dreispaltige mit Footer und Header könnte es problematisch werden. Aus Mangel an einem Screenreader kann ich den Praxisbezug zwar nicht wirklich herstellen, aber ein Textbrowser zur Not hilft auch. Und die meisten Tabellenlayouts sind mit einem solchen nicht sehr praktisch anzuwenden. Vor allem, wenn der Designer selbst die Navigation als Tabelle aufgebaut hat und nicht als ul, wie es vielerorts empfohlen wird... Ekelhaft 😮

    Letztlich hat der Mann nicht Unrecht: Es gibt Layouts, die mit CSS ein einziger Krampf sind, während sie mit einer einzigen Tabelle völlig problemlos, flexibel und sauber umgesetzt werden können. Auch, dass Tabellenzeilen- und spalten untereinander eine Beziehung haben, während <div>s primär in Relation zu ihrem Container stehen, stimmt.

    klar, in einigen Fällen geht es mit einer Tabelle schneller und einfacher. Oft ist das Layout aber nicht final. Vll will man auch dem, der die html-Seiten entwirft, unter die Arme greifen.

    Nehmen wir mal das übliche Layout als Beispiel:

    <!-- Als Tabelle -->
    <table><tr><td colspan="3"><h1>Überschrift</h1></td></tr>
    <tr><td><ul><li>Navigation</li></ul></td>
    <td>Inhalt</td>
    <td>Info</td></tr>
    <tr><td colspan="3">Footer</td></tr></table>
    <!-- Formatierung bitte selber denken, würde sonst zu lang werden -->
    
    <!-- als CSS-Layout -->
    <h1>Überschrift</h1>
    <div id="navi"><ul><li>Navigation</li></ul></div>
    <div id="right>Info</div>
    <div id="content">Inhalt</div>
    <div id="footer">Footer</div>
    

    was würde dem, der den Inhalt schreibt nun besser als Vorlage gefallen?
    Das entsprechende CSS braucht zwar etwas Zuneigung, aber einmal fertig kann man es auf alle Seiten in dieser Form anwenden.
    Noch dazu schreibt der untere Fall nicht vor, wie die Seite auszusehen hat. Vor allem die Navigation ist ja oben fast ja schon als vertikale Liste festgesetzt.

    Leute, öffnet doch einfach mal die Augen. Tabellen sind nicht böse und CSS sind kein Allheilmittel. Tabellen haben Stärken und Schwächen, CSS auch.

    ja... man muss nur wissen, wo die Stärken und Schwächen liegen. Wer seine Seitenlayout mit einer Tabelle macht weiß entweder sehr genau, was er macht, oder er hat absolut keine Ahnung, was Tabellen sind und was man mit CSS alles kann. Ersteres findet man leider eher selten.
    Die Schwächen von CSS muss man halt kennen, wenn man nicht in eine böse Falle geraten will

    Also bitte nicht einfach auf der "Ist so und so" - "Isses ja gaaaar nicht!!!" - Schiene argumentieren, sondern belegbare Argumente bringen.

    dito

    Nchtrag: Ich schreibe niemandem vor, wie er sein Layout machen soll... wenn jemand Tabellen verwenden will, nur zu. Aber in der Regel (die berühmten 95%) wäre ein entsprechendes CSS-Layout in der Erstellungsphase zwar aufwendiger, dafür hinterher weit flexibler und die entstehenden Dateien wären deutlich kleiner und übersichtlicher (siehe Beispiel oben). Ich habe bisher keine Seite gesehen, die nur mit Tabellen zu realisieren wäre.



  • @zwutz dein Quellcode vergleich ist ja mal ein wenig unfair, weil beide Codes nicht dasselbe machen. Während die Tabelle die Seite in 5 Teile einteilt, hast du in der div version nur 4 Teile. Und da treten halt einige der Probleme, die im Artikel explizit genannt wurden, nicht auf. CSS, 3 Spalten Layout und dynamischer Inhalt vertragen sich nun einmal nicht. Und das ist es, was der Author (zurecht) kritisiert.Und ich würde mal davon ausgehen, dass weit mehr als 5% der Webseiten das 3-spaltn Layout verwenden.CSS versagt also in einem grundlegenden Anwendungsgebiet. Und das darf man zurecht kritisieren.

    btw:

    Entschuldige, dass ich nicht jede Diskussion, die es hier gab, mitverfolgt habe.

    das stand exakt 1 post vor dir. Es hätte also gereicht, hättest du DIESEN thread verfolgt.



  • otze schrieb:

    @zwutz dein Quellcode vergleich ist ja mal ein wenig unfair, weil beide Codes nicht dasselbe machen. Während die Tabelle die Seite in 5 Teile einteilt, hast du in der div version nur 4 Teile. Und da treten halt einige der Probleme, die im Artikel explizit genannt wurden, nicht auf. CSS, 3 Spalten Layout und dynamischer Inhalt vertragen sich nun einmal nicht. Und das ist es, was der Author (zurecht) kritisiert.Und ich würde mal davon ausgehen, dass weit mehr als 5% der Webseiten das 3-spaltn Layout verwenden.CSS versagt also in einem grundlegenden Anwendungsgebiet. Und das darf man zurecht kritisieren.

    Oh, entschuldige. Ich habe im Beispiel einen Teil vergessen, da hast du recht.
    Habs geändert.

    Ja, ein dreispaltiges Layout vernünftig umzusetzen ist eine Schwäche von CSS. Es geht, wenn man einige Dinge beachtet, aber es ist nicht trivial.
    Die Stärken, die es trotzdem hat, bewegen mich aber dazu, es trotzdem zu verwenden (und diese Meinung auch nach außen zu vertreten. Wenn jemand partout ein dreispaltiges Layout will, empfehle ich YAML. Dort sind die Schwächen geschickt umfahren)

    otze schrieb:

    btw:

    Entschuldige, dass ich nicht jede Diskussion, die es hier gab, mitverfolgt habe.

    das stand exakt 1 post vor dir. Es hätte also gereicht, hättest du DIESEN thread verfolgt.

    Da stand nichts von Relevanz. Auch da stand nur, warum CSS Inhalt und Layout trotzdem nicht trennt. Auf der Seite, auf die sich dieser Thread bezieht, stand zwar der Grund für die Behauptung, aber wenn sich die Abhängigkeit nur dadurch äußert, dass man auf die Reihenfolge der <div>s innerhalb der Datei achten muss, dann kann ich damit leben. Vor allem, da ich damit noch immer keine drei Spalten festgesetzt habe, sondern nur, dass die Seite aus drei Bereichen besteht



  • zwutz schrieb:

    otze schrieb:

    @zwutz dein Quellcode vergleich ist ja mal ein wenig unfair, weil beide Codes nicht dasselbe machen. Während die Tabelle die Seite in 5 Teile einteilt, hast du in der div version nur 4 Teile. Und da treten halt einige der Probleme, die im Artikel explizit genannt wurden, nicht auf. CSS, 3 Spalten Layout und dynamischer Inhalt vertragen sich nun einmal nicht. Und das ist es, was der Author (zurecht) kritisiert.Und ich würde mal davon ausgehen, dass weit mehr als 5% der Webseiten das 3-spaltn Layout verwenden.CSS versagt also in einem grundlegenden Anwendungsgebiet. Und das darf man zurecht kritisieren.

    Oh, entschuldige. Ich habe im Beispiel einen Teil vergessen, da hast du recht.
    Habs geändert.

    Ja, ein dreispaltiges Layout vernünftig umzusetzen ist eine Schwäche von CSS. Es geht, wenn man einige Dinge beachtet, aber es ist nicht trivial.
    Die Stärken, die es trotzdem hat, bewegen mich aber dazu, es trotzdem zu verwenden (und diese Meinung auch nach außen zu vertreten. Wenn jemand partout ein dreispaltiges Layout will, empfehle ich YAML. Dort sind die Schwächen geschickt umfahren)

    Warum muss ich überhaupt Zeit in das Entwerfen eines 3-Spalten CSS-Layouts investieren? Wenn CSS so flexibel ist wie du mir erzählst müsste ich doch in kürzester Zeit bei Google einen Katalog finden wo ich mir das fertig herunterladen kann und nur noch um die Optik Sorgen machen muss (Farben, Textfluss, und solche Späße).
    Daher meine Frage: gibt es sowas? Wenn nicht, warum nicht?



  • Entsprechende Vorlagen gibt es säckeweise.

    Aber ohne das eigene Hirn anzustrengen wird das nichts.

    Ich erstelle größere Web-Applikationen, die Umstellung von Tabellen- auf
    CSS-Layout hat den rausgepusteten HTML-Code auf 30% zusammengestutzt. Irgendwie
    auch ein Argument.

    Ein verschachteltes Tabellenlayout ist ziemlich schnell an einem Punkt wo es
    nicht mehr pflegbar ist. Tabellen sollten nur dort eingesetzt werden wo es
    sinnvoll ist: bei der Darstellung tabellarischer daten.



  • Scheppertreiber schrieb:

    Entsprechende Vorlagen gibt es säckeweise.

    Aber ohne das eigene Hirn anzustrengen wird das nichts.

    Das heißt es gibt keinen Layout-Builder, in welchem ich das Basis-Layout kurz anpassen kann (vielleicht sogar WYSIWYG) und sobald ich zufrieden bin mir das per Mausklick herunterladen kann?
    Wäre doch eine feine Sache, so könnte jeder in den Genuss von CSS für das Layout kommen ohne erst 10 CSS-Webseiten gebastelt haben zu müssen um zu wissen wie man es macht.
    Für mich der alle paar Jahre mal eine kleine Seite basteln muss ist das Tabellenlayout einfach um Welten einfacher. Wieder erlernen geht quasi on-the-fly, da es nur wenig zum Lernen gibt. Bei CSS dagegen muss ich erst einmal ewig lange herumsuchen wie ich nun was mache (und das selbst, wenn ich CSS nur für solche Dinge wie Rahmen der Tabelle, etc. nutze).



  • Drei Spalten sind nun wirklich einfach:

    <div style="float:left; width 20%;">
    Links
    </div>
    <div style="float:rightt; width 20%;">
    Rechts
    </div>
    <div>
    Ich hänge in der Mitte
    </div>
    

    Mit Tabellen läßt sich flott etwas zusammenschustern. Verwendet man das nicht
    ist es anfangs etwas mehr Arbeit ...



  • S.T.A.L.K.E.R. schrieb:

    Das heißt es gibt keinen Layout-Builder, in welchem ich das Basis-Layout kurz anpassen kann (vielleicht sogar WYSIWYG) und sobald ich zufrieden bin mir das per Mausklick herunterladen kann?

    Für Yaml gibts das:
    http://builder.yaml.de/



  • S.T.A.L.K.E.R. schrieb:

    Scheppertreiber schrieb:

    Entsprechende Vorlagen gibt es säckeweise.

    Aber ohne das eigene Hirn anzustrengen wird das nichts.

    Das heißt es gibt keinen Layout-Builder, in welchem ich das Basis-Layout kurz anpassen kann (vielleicht sogar WYSIWYG) und sobald ich zufrieden bin mir das per Mausklick herunterladen kann?
    Wäre doch eine feine Sache, so könnte jeder in den Genuss von CSS für das Layout kommen ohne erst 10 CSS-Webseiten gebastelt haben zu müssen um zu wissen wie man es macht.
    Für mich der alle paar Jahre mal eine kleine Seite basteln muss ist das Tabellenlayout einfach um Welten einfacher. Wieder erlernen geht quasi on-the-fly, da es nur wenig zum Lernen gibt. Bei CSS dagegen muss ich erst einmal ewig lange herumsuchen wie ich nun was mache (und das selbst, wenn ich CSS nur für solche Dinge wie Rahmen der Tabelle, etc. nutze).

    es gibt solche tools .. in ajax form z.b. ... aber was soll der müll?


  • Mod

    PRIEST schrieb:

    es gibt solche tools .. in ajax form z.b. ... aber was soll der müll?

    Ne, das ist schon ein Problem von CSS.
    Keine vernünftigen WYSIWYG Editoren und probleme bei pixel genauen layouts.

    sind definitiv schwachstellen die man lösen muss. macht nur keiner weil es einfacher ist die probleme wegzudiskutieren...



  • S.T.A.L.K.E.R. schrieb:

    Das heißt es gibt keinen Layout-Builder, in welchem ich das Basis-Layout kurz anpassen kann (vielleicht sogar WYSIWYG) und sobald ich zufrieden bin mir das per Mausklick herunterladen kann?
    Wäre doch eine feine Sache, so könnte jeder in den Genuss von CSS für das Layout kommen ohne erst 10 CSS-Webseiten gebastelt haben zu müssen um zu wissen wie man es macht.
    Für mich der alle paar Jahre mal eine kleine Seite basteln muss ist das Tabellenlayout einfach um Welten einfacher. Wieder erlernen geht quasi on-the-fly, da es nur wenig zum Lernen gibt. Bei CSS dagegen muss ich erst einmal ewig lange herumsuchen wie ich nun was mache (und das selbst, wenn ich CSS nur für solche Dinge wie Rahmen der Tabelle, etc. nutze).

    Geht mir ähnlich. Was letzten Endes zählt ist das Ergebnis mit möglichst wenig Zeitaufwand. Bin früher immer wieder auf Stellen gestoßen wo ich mit CSS nicht das gewünschte Ergebnis bekam und es im Gegenzug mit 1-2 Tabellen kinderleicht war. Warum soll ich mir also einen abnippeln "nur" damit ich es total cool mit CSS hab, anstelle mit 1-2 achso schlimmen Tabellen? Gerade in Real-Projekten gibt es doch immer wieder Stellen wo es eben doch nicht so schön einfach ist.
    Ich bin aber auch kein Webdesigner, will damit nicht sagen, dass es nicht doch besser mit CSS ginge. Ich benutze schon auch CSS - aber nicht für alles auf Teufel komm raus.



  • Dasd schrieb:

    S.T.A.L.K.E.R. schrieb:

    Das heißt es gibt keinen Layout-Builder, in welchem ich das Basis-Layout kurz anpassen kann (vielleicht sogar WYSIWYG) und sobald ich zufrieden bin mir das per Mausklick herunterladen kann?

    Für Yaml gibts das:
    http://builder.yaml.de/

    Danke, das ist ja mal cool 🙂
    Fehlt nur ein Speichern&Laden Feature 😃



  • Shade Of Mine schrieb:

    probleme bei pixel genauen layouts.

    Wer auf pixelgenau Layout steht, sollte sich aus dem Webdesign zurückziehen und ins Printdesign gehn.
    Außer Flash/Silverlight fällt mir keine Möglichkeit ein, pixelgenaue Layouts zuverlässig zu realisieren.
    Das fängt damit an, das man nicht weiß, ob der User nen 30"-Bildschirm oder ein Handydisplay zum surfen nutzt, ob er die Schriftarten hat, die man selbst verwendet und wie er will, dass die Seite aussieht.
    Das "Problem" auf CSS zu schieben ist ein wenig gemein...
    Und es ist auch nichts, was man lösen müsste... man könnte es ja nichtmal lösen


Anmelden zum Antworten