Tabellenbreite nach Bildschirmbreite

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

  • Tabellenbreite nach Bildschirmbreite

    Diese Script gibt mir ja die Möglichkeit, Die Fensterbreite zuremittel:
    Code:
    <script language="JavaScript">
    <!--
    if(screen.width >= 1024)
    window.location.href = "home_1024.htm"
    else if(screen.width = 800)
    window.location.href = "home_800.htm"
    else 
    window.location.href = "home_640.htm"
    //-->
    </script>
    Wie kann ich das jetzt ändern, damit er mir meine Tabellenbreite anpasst?
    PHP-Code:
    // bei 800x640
    <table width="750">//<=Dieser Wert
    <tr>
    <
    td colspan="2">header</td>
    </
    tr>
    <
    tr>
    <
    td width="200">Navigation</td>
    <
    td width="550">//<=Dieser Wert
    Text</td>
    </
    tr>
    </
    table>

    // bei 1024x768
    <table width="1000">//<=Dieser Wert
    <tr>
    <
    td colspan="2">header</td>
    </
    tr>
    <
    tr>
    <
    td width="200">Navigation</td>
    <
    td width="800">//<=Dieser Wert
    Text</td>
    </
    tr>
    </
    table
    Diese drei Wert müssen ja angepast werden, damit die Tabelle bei den zwei Bildschirmbreiten angezeigt wird.
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    Prozentangaben bei den Tabellen ?
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      Ebent nicht. Damit gibt es ja Probleme die ich verhindern will. ebent mit dieser Bildschirmweiche. Wenn du es mit % machst kann es passieren, das die Tabelle trotzdem größer dargestellt wird als wenn du mit pixel arbeitest.
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        ich machs so:
        index
        <script language="JavaScript">
        <!--
        if(screen.width >= 1024)
        window.location.href = "index2.php?r=3"
        else if(screen.width = 800)
        window.location.href = "index2.php?r=2"
        else
        window.location.href = "index2.php?r=1"
        //-->
        </script>
        dann noch ne Meta-Umleitung, 2 Sekunden auf index2.php?r=1

        und per php verschiedene Werte setzen, die Tabellenbreiten
        selbst per JS zu schreiben wird immer so unübersichtlich
        <script language="JavaScript">
        <!--
        if(screen.width >= 1024)
        var breite = 1000;
        else if(screen.width = 800)
        var breite = 800;
        else
        var breite = 600;
        //-->
        </script>
        und dann
        <script language="JavaScript">
        <!--
        document.write('<table width=\"'+'breite+'\">);
        //-->
        </script>
        Gruß
        Thomas

        Kommentar


        • #5
          Original geschrieben von Thomas
          und per php verschiedene Werte setzen, die Tabellenbreiten
          selbst per JS zu schreiben wird immer so unübersichtlich
          <script language="JavaScript">
          <!--
          if(screen.width >= 1024)
          var breite = 1000;
          else if(screen.width = 800)
          var breite = 800;
          else
          var breite = 600;
          //-->
          </script>
          und dann
          <script language="JavaScript">
          <!--
          document.write('<table width=\"'+'breite+'\">);
          //-->
          </script>
          Die genannte Lösung funktioniert leider nicht! Per PHP kann man im Übrigen gar nichts machen, da PHP geparst wird, bevor die Seite im Browser landet. Und erst im Browser kann die Screen-Breite abgefragt werden.

          Deswegen jetzt die Frage: Gibt es eine Möglichkeit, die Tabellenbreite einer Tabelle von der Screen-Breite abhängig zu machen ohne einen Redirect auf eine neue Seite auszuführen?

          Kann man per JavaScript einen HTML-Befehl ausführen lassen? Eine Anweisung wie folgende, funktioniert jedenfalls nicht:
          PHP-Code:
          <SCRIPT type="text/javascript">
          <!--
          if (
          screen.width>1024)
              var 
          width="980";
          else
              var 
          width="100%";
          //-->
          </script>

          <
          table width="javascript:document.write(width);" 
          Da Javascript nicht geparst wird, kann es wohl keine Lösung für dieses Problem geben, oder doch?

          Danke für jeden Hinweis!

          Gruß,
          Chriss

          Kommentar


          • #6
            Salut

            mach doch einfach eine index Datei, die mittels JS die Breite ausliest.
            Danach kannst du ja eine $_GET['breite'] machen, die du überall anhängst.
            In jedem Zielscript prüfst du also ob diese Var gesetzt ist und ob die Werte
            gültig sind. Dann kannst du mittels php beim Seitenaufbau die
            entsprechende Tabellengrösse rausschreiben.

            Gruss

            tobi
            EDIT:

            @Wotan: Sorry habe das Datum nicht angeschaut...

            Zuletzt geändert von jahlives; 28.03.2005, 15:35.
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar


            • #7
              Habt Ihr beide schon mal auf das alter des Posting(30-10-2002 12:42) geschaut, ihr braucht nicht so alte Posting vorholen!
              Zuletzt geändert von Wotan; 28.03.2005, 17:46.
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar


              • #8
                Original geschrieben von jahlives
                [...]mach doch einfach eine index Datei, die mittels JS die Breite ausliest.
                Danach kannst du ja eine $_GET['breite'] machen, die du überall anhängst.
                Ja, das funktioniert natürlich. Ich komme aber nicht drumrum, zumindest beim ersten Aufruf ein Redirect zu erzeugen, bzw. die Seite erneut zu laden. Das wollte ich eigentlich nicht, aber ist wohl tatsächlich nicht anders möglich.


                Original geschrieben von Wotan
                Habt Ihr beide schon mal auf das alter des Posting(30-10-2002 12:42) geschaut, Ich braucht nicht so alte Posting vorholen!
                Wieso denn nicht? Es passt doch zu meiner Frage und dass die ersten Beiträge schon sehr alt sind, stört in diesem Fall doch überhaupt nicht.

                Gruß + Danke,
                Chriss

                Kommentar


                • #9
                  Ich finde die Idee an sich zwar total bescheuert, aber ich würde es nach dem Prinzip machen (wenn ich dazu gezwungen würde):
                  Code:
                  <table id="Tabelle">
                  ...
                  document.getElementById('Tabelle').style.width = '12px';
                  hopka.net!

                  Kommentar


                  • #10
                    Original geschrieben von Hopka
                    Ich finde die Idee an sich zwar total bescheuert, aber ich würde es nach dem Prinzip machen (wenn ich dazu gezwungen würde):
                    Code:
                    <table id="Tabelle">
                    ...
                    document.getElementById('Tabelle').style.width = '12px';
                    Super, so funktioniert's! Ich setze Deine Lösung nun ein, um das Layout bei hohen Auflösungen ansprechender zu gestalten. Wieso findest Du die Lösung bescheuert?

                    Das einzige, was passieren kann ist, dass der User JavaScript deaktiviert hat. Und in diesem Fall wird die Tabelle ohne Größenangabe 100% breit. In meinem Fall kein Problem.

                    Gruß,
                    Chriss

                    Kommentar


                    • #11
                      Ich finde die Lösung nicht bescheuert. Ich finde nur die Idee an sich ziemlich dämlich, die Breite einer Tabelle pixelgenau ans Fenster anzupassen.
                      Ich würde einfach die %-Angaben nehmen, und es in Kauf nehmen, dass dann halt in dem ein oder anderen Browser etwas größere Lücken da sind.
                      hopka.net!

                      Kommentar


                      • #12
                        Original geschrieben von Hopka
                        Ich finde die Lösung nicht bescheuert. Ich finde nur die Idee an sich ziemlich dämlich, die Breite einer Tabelle pixelgenau ans Fenster anzupassen.
                        Ich würde einfach die %-Angaben nehmen, und es in Kauf nehmen, dass dann halt in dem ein oder anderen Browser etwas größere Lücken da sind.
                        Ok, aber warum sollte man nicht die Möglichkeiten nutzen, um auf sehr einfache Art und Weise das Layout für verschiedene Auflösungen attraktiver zu gestalten? Was ist daran "dämlich"?

                        Wenn Du mein Layout kennen würdest, so würdest Du mir sicher Recht geben, dass die nun gewählte Lösung bei allen Auflösungen mehr hergibt als zuvor.

                        Gruß,
                        Chriss

                        Kommentar

                        Lädt...
                        X