Brauche kurz einmal einen HTML-Meister

  • Jetzt spiele ich mich schon seit einer Woche wie ein Trottel, und komme nicht auf den Fehler drauf.


    Wechselt zuerst einmal auf meinen developer style: OldStyle
    Nehmen wir als Bsp. diesen Thread: http://rs6k.feig.at/informatik…wthread.php?threadid=1118


    Wie man sehen kann, ist neben der posting Überschrift ein neuer Link. post#: xx
    Das interessant ist, wenn man etwas weiter runter scrollt, dass dieser Link nur dann im eck ist, wenn es keine Überschrift gibt. Sobald auf der anderen Seite eine Überschrift auftaucht, ist es versetzt. Und ich komme einfach nicht drauf wieso. Hier ist eine mal der Quellen-Code:

  • nach 2min draufschaun glaub ich, dass es dran liegen könnte, dass du zuvor dieses

    Code
    1. <smallfont>...</smallfont>

    hast.
    ich glaub, dass das einen zeilenumbruch impliziert.


    Grund für die Annahme: Bsp woanders:

    Code
    1. <normalfont><b>$post[username]</b></normalfont>
    2.         <smallfont>$post[usertitle]</smallfont>
    3.         $stars


    da hast du auch nirgens einen zeilenumbruch angegeben, er wird aber trotzdem eingebaut...


    probier, das &lt;/smallfont&gt; über den post-counter drüberzuziehen...


    ansonsten weiß ich auch nicht weiter...


    //edit: 3mal nachbessern müssen... *tztztz*
    ///edit: bin zu faul, die ganzen &lt; und &gt; umzubessern... kann ich die auch anders irgendwie eingeben, ohne dass sie als Tags interpretiert werden? bei fragen: P/N

    -----BEGIN GEEK CODE BLOCK-----
    Version: 3.12
    GAT d-(+) s++: a- C++$>+$ U++>+++ P++>+++ L+++ !E W++>$ !N K? w(--)@ !O !M V? PS+ PE++(-)> Y+ PGP(+) t---(-) !5 X R- tv-(--) b++>$ DI+ D+(++) G(+) e>++++* h-- r++ y++
    ------END GEEK CODE BLOCK------ .

  • PHP
    1. <div align="right"> (post#: $post[postcount]) </div>


    div impliziert jedenfalls einen einen zeilenumbruch. allerdings danachund nicht davor. wenn du allerdings das align änderst, muss er zwangsläufig in eine neue zeile wechseln. hab das jetzt zwar ned ausprobiert, das nehm ich aber an.
    mögliche lösung, die allerdings viel arbeit wär: tabelle umschreiben, und zwar z.b. so: beitragstexte erstrecken sich über zwei colums. wenn es eine überschrift gibt benutzt man dann die 2 colums einzeln, einmal für die überschrift einmal für den counter, dann kann mans auch explizit rechtsbündig deklarieren


    P.S.: find ich cool dass das gesamte vBulletin ein here-doc is :D (jedenfalls der ausschnitt den du gepostet hast)

  • ich bin zwar kein HTML-Experte: aber am smallfont-Tag liegts nicht.
    wenn du zwei div elemente hintereinander setzt, also
    < div > < /div > a < div > < /div > b
    führt zumindest der Mozilla (der HTML sehr exakt interpretiert) einen Zeilenumbruch durch.


    O.k., is nicht von mir, aber nachschauen und finden ist eben auch eine kunst:


    <quote>
    Die beiden HTML-Elemente div und span haben besondere Bedeutung für CSS Stylesheets. Der Grund ist, dass sie selber relativ eigenschaftslos sind. Der einzige Unterschied besteht darin, dass das div-Element eine neue Zeile im Textfluss erzwingt, während span zur Verwendung innerhalb eines Textes verwendet werden kann und daher überhaupt keine Eigenschaften hat.
    </quote>


    Wenn du irgendein Problem mit HTML hast, schau in SelfHTML nach. Alte Lebensweisheit

  • Der &lt;smallfont&gt; Tag ist IIRC ein inline-Tag (kein zeilenumbruch). der &lt;div&gt; Tag hingegen ist aber ein Block-Tag, der im Prinzip eine ganze Zeile für sich haben will und dann auch einen Zeilenumbruch macht.


    Das was du, Ordo, machen willst, ist in HTML nicht so einfach, wie es aussieht. Man kann nämlich nicht einmal den smallfont-Tag per CSS rechts ausrichten, da er eben inline ist. Macht alles Sinn, erleichtert einem aber nicht umbedingt die Arbeit.


    Die einfachste (einzige???) Lösung dafür wäre eine unsichtbare Tabelle, wo du die Überschrift und die Post-# in jeweils ein Tabellenelement gibst und die Textausrichtung anpasst.


    Hat ein paar Nachteile die Lösung, aber sollte wenigstens funktionieren.


    happy hacking,
    ded


    PS: Dass bei dem doofen vbulletin nicht mal Tags aus den Postings entfernt bzw. die &lt; & &gt;'s entsprechend maskiert werden ist schon interessant.

    I'm a pessimist because of intelligence, but an optimist because of will. -- Antonio Gramsci

  • Das mit Tabelle habe ich schon im schnell durchgang ausprobiert. Ergebnis: Die Sachen waren nicht mehr an der richtigen Stelle :D
    Komplett verhunzt. :D
    Ich werde mal auf meinem Lokal Informatik-Forum herum basteln. Höchstwahrscheinlich muss ich es komplett neu schreiben. Naja egal. Nützlich ist es schon.
    Dann können die User jemanden anderen einen genauen Link schicken, und nicht sagen in dem Thread irgendwo. Nach der Prüfung werde ich mich mal dahinterklemmen.

  • Habe es jetzt geschafft. Mir war schon vorher klar, dass das höchstwahrscheinlich nur mit einer Tabelle gehen wird. Wollte aber sicher gehen, ob es vielleicht nicht doch eine einfache Lösung gibt. Naja, auf jeden Fall hat der Hack nun Final Status erlangt und wird für die anderen Styles auch eingebaut.


    Für alle die es interessieren:


    PHP
    1. <p align="right"><a href="showthread.php?postid=$post[postid]#post$post[postid]">(post#: $post[postcount])</a></td>
    2. </tr>
    3. </table>
    4. <!-- /Counter -->
    5. <p><normalfont>$post[message]</normalfont></p>
    6. $post[attachment]
    7. <p>$post[signature]</p>
    8. <p>$post[editedby]</p>