Steve: DIV und automatische Breite

Hallo zusammen,

ich habe eine simple Frage:

Wie bekomme ich einen Rahmen um ein DIV, wobei der DIV-Bereich nicht die ganze Breite nutzen soll. Mit der Angabe "width:auto" geht es nicht.

<div style="border:1px solid #808080; width:auto; padding:1%;"><p style="font-weight:bold;">Text 1</p>
Text2<br>
text3<br>
</div>

Danke schon mal,

Steve

  1. hi,

    Wie bekomme ich einen Rahmen um ein DIV,

    mit border.

    wobei der DIV-Bereich nicht die ganze Breite nutzen soll. Mit der Angabe "width:auto" geht es nicht.

    was heisst "geht nicht"?
    der div ist ein block level element, also nimmt er die verfügbare breite ein, sofern du ihm nichts anderes vorschreibst - z.b. durch eine explizite breitenangabe.

    gruss,
    wahsaga

    1. hi wahsage,

      was heisst "geht nicht"?
      der div ist ein block level element, also nimmt er die verfügbare breite ein, sofern du ihm nichts anderes vorschreibst - z.b. durch eine explizite breitenangabe.

      Naja, das würd ich mal so nicht sagen, eine Tabelle ist auch ein Block Element und nimmt auch nur soviel Platz ein wie das grösste in Ihr befindliche Element benötigt. Mit den Div's und der Breite habe ich mich auch schon genug geärgert , deswegen nehme ich vorzugsweise Tabellen zur Ausrichtung, ist zwar unflexibler aber funktioniert :)

      freundliche Grüsse,
      Daniel

      --
      Das ist der ganze Jammer, die Dummen sind immer so sicher und die Gescheiten so voller Zweifel.
      [Bertrand Russell]
      1. Hi Daniel,

        ja den selben Effekt wie die autom. Breitenanpassung bei Tabellen suche ich auch für DIVs. Jetzt packe ich einfach die DIVs in eine Tabelle.

        Bye,

        Steve

        1. Hi,

          ja den selben Effekt wie die autom. Breitenanpassung bei Tabellen suche ich auch für DIVs.

          und das gibt es halt nicht, das ist eine Spezialität von Tabellen.
          Wenn es Dir aber nur darum geht, einen border um ein Stück Text zu setzen, formatiere hierzu ein inline-Element, z.B.
          <strong style="border:1px solid red;">wichtiger Text</strong>.

          freundliche Grüße
          Ingo

          1. Hi Ingo,

            nein ich will einen ganzen Ansatz umrahmen!

            Bye

            Steve

        2. ..ihr wißt aber schon, daß "auto" oder Prozentangaben bei "width" sich auf das ELTERN-Element (im Zweifelsfalle body) beziehen ?

      2. Naja, das würd ich mal so nicht sagen, eine Tabelle ist auch ein Block Element und nimmt auch nur soviel Platz ein wie das grösste in Ihr befindliche Element benötigt. Mit den Div's und der Breite habe ich mich auch schon genug geärgert , deswegen nehme ich vorzugsweise Tabellen zur Ausrichtung, ist zwar unflexibler aber funktioniert :)

        wenn du die Maße der Tabelle explizit vorgibts
        (width:123px und height:123px) UND ggf. noch die overflow Funktion benutzt (für Elemente größer als die Tabellen-Zellen)

        DANN

        wird genau der Platz eingenommen den du vorgibst
        selbiges gilt für DIV´s

        ...und soweit ich weiß ist (bis auf overflow) dies auf allen Browsern möglich

      3. Hi,

        Naja, das würd ich mal so nicht sagen, eine Tabelle ist auch ein Block Element und nimmt auch nur soviel Platz ein wie das grösste in Ihr befindliche Element benötigt.

        Für Tabellen ist das aber auch ausdrücklich anders definiert als für allgemeine blocklevel-Elemente.
        [http://www.w3.org/TR/REC-CSS2/tables.html#width-layout]

        Insbesondere der erste Satz unter "Automatic table layout"

        cu,
        Andreas

        --
        MudGuard? Siehe http://www.Mud-Guard.de/
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.