Ankündigung

Einklappen
Keine Ankündigung bisher.

Texthöhe?

Einklappen

Neue Werbung 2019

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

  • Texthöhe?

    Hi,

    zu aller erst möcht ich erstmal "Hallo" sagen das hier ist mein erste Thread hier im Forum .

    So nun aber zu meiner Frage. Und zwar habe ich eine Tabelle die exakt 130pxl breit ist. In diese Tabelle wird ein Text geladen, der aber aus Platzgründen verkürzt wird also ich ihn abschneide und dann ausgebe. Nun möchte ich, dass wenn ich mit der Maus über die Tabelle fahre sich die Tabelle vergrößert um den kompletten Text darzustellen. Wie das vergrößern funktioniert ist mir schon klar. Mein Problem ist nun aber: Um wieviel pxl muss die Tabelle vergrößert werden. Dafür müsste ich ja wissen wieviel pxl der Text der dargestellt werden soll hoch ist. Und das zu berechnen ist mein Problem. Wie stelle ich das an?

    Vielen Dank im vorraus

    Jan


  • #2
    Hallo,

    wie wäre es mit
    printf( "<td title=\"%s\">%s</td>", $langerText, $kurzerText );

    Kommentar


    • #3
      Hm, dabei wirst du wohl berüchsichtigen müssen, welche Schriftart du benutzt.
      Generäll lässt sich die Anzahl der Zeichen mit
      http://de.php.net/strlen
      herausfinden...

      Kommentar


      • #4
        Und man muss wissen, welcher Browser benutzt wird, wie dieser eingestellt ist... Pixelgenaue Layouts funktionieren einfach nicht.
        mod = master of disaster

        Kommentar


        • #5
          Hallo,

          ähm, PHP? Ich würde sagen: CSS. Z.B. mit "overflow"? "clip"? Das Zählen der Zeichen ist so eine Sache. Ich mußte sowas mal anderorts machen (zur SVG-Erzeugung), da muß man dann mit etwas Buchstabensortiererei und Korrigiererei anhand von Schriftart und -größe (wo der bereits genannte Client-seitige Browser als fragwürdige Größe ins Spiel kommt, das Problem hatte ich nicht) grob schätzen, etwas Sicherheitsbuffer dazu rechnen, und ..., ach, vergiss diesen Ansatz einfach...

          Grüße,
          Thorsten

          Kommentar


          • #6
            Hallo!

            Ich denke, dass PHP hierfür eher unpraktisch ist, sowas klingt spontan eher nach einem klassischen Javascript-Ansatz. Grob würde ich es so machen (bzw. habe ich es schon einmal gemacht): Du bastelst Dir ein absolut positioniertes <div> oder <span>, welches erstmal versteckt wird und den anzuzeigenden kompletten Inhalt enthält (ohne Angabe der height, das macht dann der Browser automatisch für dich.). Den onmouseover belegst Du nun mit einer JS-Funktion, die das <div> sichtbar macht und an die Mausposition verschiebt. onmouseout versteckt es dann wieder...

            Gruß,
            Stormray

            Kommentar


            • #7
              a: mit css styles könntest du die schriftart und grösse anpassen, und das dann errechnen.

              b: wenn die ausgabe mit <pre> erfolgt, hast du ne standardschrift mit normgrösse (alle zeichen gleich breit) und kannst das dann auch machen wie bei a nur ohne css
              keine

              Kommentar

              Lädt...
              X