Ankündigung

Einklappen
Keine Ankündigung bisher.

Designfragen - Frames sind out, was ist in?

Einklappen

Neue Werbung 2019

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

  • Designfragen - Frames sind out, was ist in?

    Hallo zusammen,

    ich möchte hier in meiner neue Wahlheimant Kuala Lumpur ein Auto-Portal ala Mobile.de aufbauen.

    Ich habe drei Jahre an einem PHP basierten Intranet rumgewerkelt. Bin also nicht völlig neu was das Coden in PHP oder anderen Sprachen angeht.

    Diese Problemstellung ist allerdings deutlich größer. Ich habe mir schonmal viel Mühe beim Datenbankdesign gegeben. Nun Frage ich mich, wie ich das Portal bzw. das Frontend aufbauen soll. Ich denke ein Template Systeme (Smarty?) dürfte erheblich Vorteile bringen, um Layout und Code voneinander zu trennen.

    Am meißten Kopfschmerzen bereitet mir aber der Gesamtaufbau. Was früher in Frames gelöst wurde, macht man heute offenbar in Tabellen. Bei Mobile.de existiert auf der linken Seite die Navigation, es ist aber nur ein einziges HTML File. Wie kann ich sowas bauen? Gibts dazu Tutorials? Ich habe keine Idee wie ich da vorgehen kann oder wonach ich suchen sollte.

    Vielleicht gibt es ja auch eine Art fertiges Framework?

    Gruß
    Holger

  • #2
    Im Prinzip hast du recht. Frames werden heute kaum noch verwendet. Nach dem Frame-Hype kam der Tabellen-Hype und mittlerweile sind wie beim Container-Hype (auch Divs genannt). An manchen stellen sind Tabellen sicherlich nicht wegzudenken, Frames jedoch schon, gerade in Zeiten von AJAX sind Frames überflüssig. Das erstmal zum grundlegenden Webdesign. Ob du nun ein Templatesystem verwerndest und welches das ist eine andere Frage die ich persönlich nicht beantworten kann.

    Kommentar


    • #3
      Ganz klar. Frames gehören nicht mehr auf die Website. Schon alleine durch deren Nachteile die allgemein bekannt sind.
      Die da zum Beispiel wären ...
      • Erschwertes Verlinken von Contentseiten
      • Suchmaschinen kommen oft mit Frames nicht klar
      • Frames sind nachweislich inperformant
      • Frames sind erst ab HTML 4.0 nutzbar
      • Quellcode ist nach aussen nicht leicht nachvollziehbar. Das könnte den Vertrauensbonus des Users kosten
      • Eine Seite mit Frames ist viel aufwendiger zu Erstellen


      Zu Tabellen gibt es ganz klar folgendes zu sagen...
      Design sollte mit CSS gelöst werden, Daten gehören in Tabellen.
      Beispiel:

      Eine Seite soll über einen Header-, einen Footer- und einen Content-Bereich verfügen. So erzeuge ich (vereinfacht) diese 3 Container über CSS.
      Wird im Contentbereiche eine Liste mit Fussballergebnissen verlangt, so wird diese Liste natürlich über eine Tabelle gelöst.
      Dazu sind Tabellen da. (Siehe Excel etc)

      MfG

      Hroudtwolf
      Computer-Training kostenlos, gemeinnützig bis günstig.

      Kommentar


      • #4
        Also dann werde ich das Thema Frames auf jedenfall canceln. Hatte ich aber auch nicht wirklich vor.

        Mir fällt immer noch schwer mir vorzustellen wie ich sowas bauen kann. Includiere ich einfach die verschiedenen Teile meiner Seite und habe dann eine zentrale index.php?

        Habe mir auch gestern noch ein paar Frameworks angesehen. Unter anderem Seagull und CakePHP. Aber ich denke bis ich mich da reingearbeitet habe, kann ich genauso gut alles selber mache. Eventuell mit einem Template System.

        Gruss
        Holger

        Kommentar


        • #5
          das prob ist "einfach" zu lösen:
          hier wie du die vorteile von frames "imitieren kannst".
          du machst eine tabelle und den einen teil der tabelle includierst du mit php ... einfach eine datei wie navi.php. der andere teil ist am anfang die z.b home.php
          und dann änderst du einfach died includierte datei... also anstatt home die z.b angebote.php...

          hoffe du weist was ich meine und ich hab dein problem verstanden.
          Codebeispiel:
          PHP-Code:
          echo "<table><tr><td>"; include ("navi.php");
          echo 
          "</td><td>"; include ("inhalt.php");
          echo 
          "</td></tr></table>"
          das ist der ganz grobe aufbau... dann halt noch die breite der einzelnen spaltenen festlegen und fertig...


          ODER.. mit div bzw span
          Under Construktion

          Kommentar


          • #6
            Also abgesehen von dem Tabellen-Layout ist der Vorschlag von Hu5eL richtig. Aber Tabellen werden heutzutage für Design-/Layout-technische Dinge nicht mehr verwendet. Dafür kommen divs zum Einsatz (@Hu5eL: span ist kein block-Element sondern ein inline-Element und eignet sich deshalb für sowas nicht wirklich). Man verwendet dann hauptsächlich die float und clear-Attribute, um die einzelnen "Boxen" anzuordnen.

            Kommentar


            • #7
              Ja, genau das entspricht meiner Frage. Also einfach inkludieren, je nachdem was in der navigation selectiert wurde. Das dürfte nicht allzu kompliziert sein.

              Verwender ihr in euren Projekten in der Regel Objektorietierung, baut klassen?

              Gruss
              Holger

              Kommentar


              • #8
                hab ich noch nicht einmal, soll seit php5 ja besser gehen, aber sehe noch keine notwendigkeit...
                aber habe bisher auch nur "kleinere" sachen gemacht...
                Under Construktion

                Kommentar


                • #9
                  Naja, mein Autoportal ala Mobile.de ist als Projekt ja auch nicht wahnsinnig komplex. Die Zahl der Funktionen (Auto einstellen, Löschen, Suchen...) hält sich noch in Grenzen.

                  Dann werde ich vermutlich lieber alles selber progammieren, wie mir eine Template Engine oder Framework anzutun. Sowas läßt sich ja auch selber bauen.

                  Gruß
                  Holger

                  Kommentar


                  • #10
                    Hi,

                    Wenn du Lust hast dich in fremden Code einzulesen, dann schicke ich dir mein Browsergamescript zu aus diesem Thread (http://www.php.de/ich-biete-ein-php-...owsergame.html), brauche dafür nur deine Email per PM.
                    Funktionsweise ist wie eine Seite mit Frames komplett über PHP realisiert.

                    Gruß Thomas

                    Kommentar


                    • #11
                      du solltest direkt mit div kontainern anfangen ... Tabellen haben den nachteil, dass sie nicht fürs layouten gedacht sind und das sie den code unglaublich groß werden lassen können. also lieber direkt mit div containern anfangen. Zudem kann man durch ändern der CSS datei auch das komplette layout umstellen

                      also eigentlich nur vorteile gegenüber den tabellen deshalb sofort richtig lernen es lohnt sich

                      Kommentar

                      Lädt...
                      X