Wyrównanie elementów do dołu rodzica

Wyrównanie elementów do dołu rodzica
NewUser2k13
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 217
0

demo https://jsfiddle.net/w4bj0km8/

Chciałbym aby boxy były ustawiane tak jak w aplikacjach czatowych. Od dołu okna do góry.
W elemencie parent musiałem dodać nowy sztuczny div ponieważ overflow:scroll nie współpracował z display:flex

Gdy pozbędę się tego sztucznego div'a to elementy układają się tak jak chcę - od dołu rodzica.
Niestety nie działa scroll gdy elementów jest więcej...

Xarviel
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 847
1

Możesz najpierw dodać element z paskiem przewijania, a dopiero później flexboxa

Kopiuj
<div class="scroll">
  <div class="flexbox">
    <div class="msg">...</div>
    <div class="msg">...</div>
    <div class="msg">...</div>
    <div class="msg">...</div>

    <div class="msg right">...</div>
    <div class="msg right">...</div>
  </div>
</div>
Kopiuj
.scroll {
  height: 200px;
  overflow-y: auto;
}

.flexbox {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 5px;
  min-height: 100%;
}

.msg {
  width: fit-content;
  max-width: 70%;
  padding: 8px 15px;
  border: 1px solid #000;
  border-radius: 5px;
}

.msg.right {
  margin-left: auto;
}

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.