Flexbox CSS ja HTML (opas) – responsiivisten asettelujen kehittäminen

Flexbox chat-layoutissa: Jäsennelty ohje helppoihin keskusteluihin Flexboxin avulla

Kaikki oppaan videot Flexbox CSS ja HTML (Opas) – kehitä responsiivisia ulkoasuja
Stephan Haewß
Tekijä: Stephan Haewß Päivitetty viimeksi

Web-sovellukset ovat chat-layoutteja, monien alustojen olennainen osa. Tässä ohjeessa opit, kuinka voit luoda yksinkertaisen chat-layoutin käyttämällä HTML:ää ja CSS:ää hyödyntäen Flexboxia. Flexbox mahdollistaa layouttien joustavan ja responsiivisen suunnittelun, mikä on tärkeää nykypäivänä. Alla selitän sinulle vaiheet, jotka ovat tarpeen käyttäjäystävällisen chat-layoutin luomiseen.

Flexbox CSS: 4,5 | Chat-Layout

Video ladataan YouTubesta vasta toistettaessa – silloin tietoja (mm. IP-osoite) siirretään YouTubelle/Googlelle. Lisää tietosuojaselosteessa

Tärkeimmät havainnot

  • Flexbox on ihanteellinen elementtien järjestämiseen layoutissa.
  • CSS-luokkia käyttämällä voit muotoilla erilaisia viestejä lähettäjän ja vastaanottajan mukaan.
  • Syötekenttiä ja painikkeita voidaan sijoittaa joustavasti.

Askel-askeleelta-opas

Ensinnäkin tarkastelemme HTML-pohjaa, jonka tarvitsemme chat-layoutiamme varten.

Aloita luomalla div-luokka root, joka toimii layoutin kontrollerina. Tämän divin sisällä on muita kontrollereita kuten viestit ja syötekenttä.

Flexbox keskusteluasetelma: Rakenteellinen ohje helppoihin keskusteluihin Flexboxin avulla

Viestien esittämiseksi luo toinen div-luokka messages. Täällä viestit näytetään peräkkäin. Jokainen viesti esitetään div-elementeillä luokalla MSG, jossa voit vaihdella omien (omille viesteille) ja muiden (keskustelukumppanin viesteille) välillä.

Nyt keskitymme syötekenttään. Tämän tulisi sijaita divissä luokalla MSG Input. Aseta display: flex tälle alueelle, jotta voit järjestää syötekentät ja painikkeen. Aseta Container-elementille flex-basis 40 pikseliksi, sillä se edustaa korkeutta.

Flexbox keskusteluasettelussa: Ohjeet yksinkertaisten keskustelujen rakentamiseen Flexboxin avulla

Tässä syötekentän alueessa on tärkeää asettaa align-items arvoksi stretch, jotta syötekenttä ja painike venyvät tasaisesti. Lisäksi lisää hieman Paddingia ja taustaväriä korostamaan elementtejä.

Flexboxin käyttö chat-layoutissa: Ohjeet yksinkertaisten chattien rakentamiseen Flexboxilla

Nyt siirrytään viesti-alueeseen. Myös täällä kannattaa käyttää display: flex. Varmista, että container ottaa käyttöön jäljellä olevan korkeuden kirjoittamalla flex: 1. Tämän alueen sisällä viestit tulisi näyttää pystysuorassa järjestyksessä eli flex-direction: column.

Flexboxin käyttö chat-asettelussa: Ohjeet yksinkertaisille chatteille Flexboxilla

Viestien layoutin hallitsemiseksi aseta justify-content vaihtoehdoksi flex-end. Tämä saa saapuvat viestit näkymään kontrollerin alaosassa, mikä on intuitiivisempaa käyttäjälle uusia viestejä kirjoittaessaan.

Flexbox chat-layoutissa: Rakenteellinen opas yksinkertaisiin chatteihin Flexboxin avulla

Seuraavaksi muotoile itse viestit. Varmista, että jokaisella viestillä on pyöristetyt kulmat. Voit asettaa asetuksia kuten border-radius ja padding. Lisäksi määritä maksimileveys, esimerkiksi 450 pikseliä, jotta viestit eivät tule liian leveiksi.

Flexbox chat-asettelussa: Rakenteellinen opas yksinkertaisille chatteille Flexboxilla

Eri viestityypeille (omat ja muut) on tärkeää soveltaa erilaisia CSS-luokkia. Oma-viesteille aseta align-self: flex-end, jotta ne näkyvät oikealla, kun taas muille-viesteille käytä align-self: flex-start, jotta ne näkyvät vasemmalla.

Lopuksi varmista, että syötekentällä on flex: 1, jotta se ottaa koko käytettävissä olevan tilan syötekentässä. Painikkeen tulisi vastaavasti ottaa vain tekstiä varten tarvittava tila.

Flexbox chat-layoutissa: Rakenteellinen ohje helppoihin chatteihin Flexboxin avulla

Layout on nyt perusvalmis. Viimeiset harkinnat koskevat logiikkaa, jonka voit mahdollisesti haluta lisätä web-sovellukseen käsittelemään syötteitä ja viestejä.

Yhteenveto

Tässä ohjeessa opit, kuinka voit luoda yksinkertaisen chat-layoutin Flexboxin avulla. Olet oppinut HTML-dokumentin rakenteen sekä eri alueille tarvittavat CSS-tyylit.

Usein kysytyt kysymykset

Mikä on Flexbox?Flexbox on CSS-moduuli, joka mahdollistaa elementtien joustavan järjestelyn layoutissa.

Miten voin järjestää viestit?Erilaisten CSS-luokkien käyttämisellä omille ja muille viesteille voit järjestää ne oikealle ja vasemmalle.

Voinko tehdä layoutista responsiivisen?Kyllä, Flexboxin käytön avulla layout mukautuu dynaamisesti näyttökoon mukaan.

Stephan Haewß
Kouluttaja Stephan Haewß Stephan Haewßistä: Filosofian maisterina olen ollut yli 20 vuotta ohjelmistokehityksessä eri yrityksissä (vanhempana) kehittäjänä ja toimin tällä hetkellä tuotekehityksen johtajana ohjelmistoyrityksessä. Lisäksi olen kirjoittanut muutamia kirjoja musiikin tuottamisesta ja ohjelmoinnista. Kaikki kurssit: Stephan Haewß