Elemente positionieren: Welche Methode?

  • Hallo,
    ich kenne 3 Methoden um Elemente zu positionieren. Welche von den 3 sollte man eurer Meinung nach verwenden?


    1. Float
    2. Flexbox
    3. Grid


    * Flexbox ist in IE10 nicht möglich bzw. nur mit Prefixen. Außerdem kann man damit keine komplizierten Grids erstellen.
    * Grid unterstützen die meisten Browser nicht und es könnte zu Problemen mit CMS geben, weil der Code dadurch schwerer wartbar ist.
    * Float ist zwar schwerer aber dafür funktioniert float auch bei älteren Browsern.



    Deswegen, würde ich immer noch auf float setzen und die anderen Techniken noch nicht einsetzen.


    Was würdet ihr verwenden und warum?
    Was sagt ihr zu meinen Kritikpunkten bezüglich Flexbox und Grid?
    thank
    cristiano

  • Hallo


    Elemente werden mit Flexbox oder CSS-Grid angeordnet.


    Float ist ausschließlich dafür gedacht, dass Text andere Elemente (meist Bilder) umfließt.


    Vor Flexbox und CSS-Grid waren die Möglichkeiten Elemente anzuordnen sehr engeschränkt. Deshalb wurden Float und andere CSS-Angaben oder HTML-Elemente dafür mißbraucht. Das ist heutzutage nicht mehr notwendig und sachlich zudem noch falsch.


    Du kennst wahrscheinlich Hunderte von IE10-Benutzern (Firma und Schule beharren auf der veralteten Technik und so weiter ... gääääääääääähn). In der richtigen Welt tendieren die hingegen gegen Null. Genau wie der IE11. Vor zwei, drei Jahren musste noch der IE8 und davor jahrelang der IE6 für veraltetes HTML und CSS herhalten, die sind aber heutzutage selbst aus Ausrede zu peinlich.


    Wie sich CMS und CSS-Grid stören sollen erschließt sich mir nicht.


    Zudem ist es überhaupt kein Problem Fallbacks für ältere Browser zu erstellen, wenn sie dir so wichtig sind. Browser, die CSS-Grid können verwenden es dann, die nicht CSS-Grid können aber Flexbox verwenden Flexbox und die Flexbox nicht können verwenden Float. Das sind nur ein paar Zeilen CSS, die man zudem,einmal erstellt, immer wieder verwenden kann.


    Dazu muss man natürlich HTML und CSS können. Die Ablehnung von Flexbox und CSS-Grid kommt meiner Erfahrung nach von Webseitenerstellern, die HTML und CSS nie richtig gelernt haben und Float für einfacher in der Anwendung halten. Die alten Browser sind dann nur Ausreden um ihre Unwissenheit nicht zugeben zu müssen.


    Gruss


    MrMurphy