2503 Stimmen

Wie kann ich ein Div nicht größer als sein Inhalt machen?

Ich habe ein ähnliches Layout:

<div>
    <table>
    </table>
</div>

Ich möchte, dass die div nur so weit ausdehnen, wie mein table wird.

109 Stimmen

Der Effekt wird "shrinkwrapping" genannt, und wie bereits erwähnt, gibt es mehrere Möglichkeiten, dies zu tun (float, inline, min/max-width), die alle verschiedene Nebeneffekte haben

1 Stimmen

Keine der unten aufgeführten Antworten hat bei mir funktioniert, außer: display: table -OR- height: fit-content !!!

40voto

Soviut Punkte 83233

Eine CSS2-kompatible Lösung ist die Verwendung:

.my-div
{
    min-width: 100px;
}

Sie können Ihr div auch schweben lassen, was es so klein wie möglich macht, aber Sie müssen eine clearfix wenn irgendetwas innerhalb Ihres Divs schwebt:

.my-div
{
    float: left;
}

40voto

Daft Wullie Punkte 423
width:1px;
white-space: nowrap;

funktioniert bei mir gut :)

34voto

youngrrrr Punkte 2635

Dies wurde in Kommentaren erwähnt und ist in einer der Antworten schwer zu finden:

Wenn Sie Folgendes verwenden display: flex aus welchem Grund auch immer, können Sie stattdessen verwenden:

div {
    display: inline-flex;
}

Dies wird auch von vielen Browsern unterstützt.

31voto

Hamza Punkte 673

Fügen Sie einfach einen Stil in Ihre CSS-Datei ein

div { 
    width: fit-content; 
}

30voto

Alireza Punkte 92209

GUT, In vielen Fällen brauchen Sie gar nichts zu tun, da div standardmäßig über height et width als Auto, aber wenn das bei Ihnen nicht der Fall ist, sollten Sie inline-block Display gonna work für Sie ... schauen Sie sich den Code, den ich für Sie erstellen und es ist tun, was Sie suchen:

div {
  display: inline-block;
}

<div>
  <table>
    <tr>
      <td>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi ultrices feugiat massa sed laoreet. Maecenas et magna egestas, facilisis purus quis, vestibulum nibh.</td>
      <td>Nunc auctor aliquam est ac viverra. Sed enim nisi, feugiat sed accumsan eu, convallis eget felis. Pellentesque consequat eu leo nec pharetra. Aenean interdum enim dapibus diam.</td>
      <td>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi ultrices feugiat massa sed laoreet. Maecenas et magna egestas, facilisis purus quis, vestibulum nibh.</td>
    </tr>
  </table>
</div>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X