Tworzenie Responsywnych Stron Internetowych
2 godz. 33 min · HTML i CSS · Full-stack i Programowanie
Daniel NoworytaFull stack DeveloperZacznijmy od przedstawienia projektu, który razem zbudujemy podczas tego warsztatu. Będziemy pracować nad stworzeniem nowoczesnej, responsywnej strony portfolio. Podczas budowania strony, zapoznam Cię z podstawowymi i zaawansowanymi funkcjami TailwindCSS, które pomogą Ci w efektywnym projektowaniu i stylizowaniu Twojej strony.
Zanim zaczniemy kodować, ważne jest, abyś miał dobrze skonfigurowane środowisko do pracy z TailwindCSS. Przeprowadzę Cię przez proces instalacji i konfiguracji TailwindCSS w Twoim projekcie. Pomoże to zrozumieć, jak TailwindCSS jest zbudowany i jak można go dostosować do swoich potrzeb.
Sekcja hero to wizytówka Twojej strony, więc ważne jest, aby była ona atrakcyjna i responsywna. Nauczę Cię, jak zaimplementować sekcję hero, która rozciąga się na całą wysokość i szerokość ekranu. Omówimy różne techniki, takie jak używanie tła obrazu, dodawanie ikon czy efektów obracania i zaznaczania tekstu.
W dzisiejszych czasach, gdzie ludzie korzystają z różnych urządzeń do przeglądania internetu, ważne jest, aby Twoja strona była responsywna i wyglądała dobrze na wszystkich typach urządzeń. Dowiesz się, jak korzystać z podejścia mobile first przy projektowaniu strony, co pomoże Ci zoptymalizować doświadczenie użytkownika na wszystkich rozdzielczościach ekranu.
Klasa container w TailwindCSS jest potężnym narzędziem, które pomaga w zarządzaniu układem Twojej strony. Przeprowadzę Cię przez różne sposoby korzystania z klasy container, aby uzyskać optymalny układ i design dla Twojej strony. Dowiesz się, jak zarządzać marginesami, paddingami, a także jak używać containera do tworzenia układów siatki.
Ten warsztat jest dla początkujących programistów, którzy chcą nauczyć się projektowania stron internetowych przy użyciu TailwindCSS. Idealny dla junior-deweloperów, oraz dla wszystkich, którzy chcą zrozumieć i wykorzystać moc nowoczesnych frameworków CSS.
Ostatnia sekcja, której poświęcimy swoją uwagę to jest sekcja.
Tutaj jest stopka na naszej stronie, czyli pytanie:
"Masz pomysł na projekt?". Nasz adres i poniżej linki do poszczególnych social
mediów i na końcu prawa autorskie do strony.
Przyjrzyjmy się temu, jak to wygląda.
Generalnie rzecz biorąc na ekranie
mobilnym jak widzisz nie mamy tego ozdobnika w postaci tej strzałki.
Myślę, że to jest taka sama strzałka,
którą mieliśmy tutaj po prawej stronie, dlatego.
Ale możemy już przyjąć, że tutaj ten rząd będzie się składał z dwóch
elementów na średnich ekranach i na dużych.
Dlatego możemy już przyjąć taką strukturę.
Tutaj warto byłoby pewnie zgrupować sobie
te dwa elementy adres do jednej grupy i te linki do drugiej, bo
z tego co widzimy tutaj, to przeskakuje po prostu na drugą stronę.
Stylowanie tych poszczególnych elementów możemy dostosowywać do widoku, natomiast myślę,
że warto, żeby te linki, te 6 linków social mediów było zgrupowane w jeden
element i polityka prywatności i ta ulica Musza Olków
w drugi element i tu na samym dole
już mamy tak naprawdę tą politykę prywatności.
Przejdźmy sobie do naszego kodu.
I zaczniemy sobie implementować tę logikę.
Otóż najpierw mamy jakiś duży napis.
Możemy sobie zrobić span.
Masz pomysł na projekt?
Znak zapytania to jest jeden element.
Pod spodem będziemy mieli kolejny element czyli też span.
Natomiast widzimy, że tutaj będzie ta strzałka.
Dlatego myślę, że możemy sobie od razu tutaj
zacząć od wprapowania tego w div, bo będziemy musieli mieć dwa elementy.
Jednym z nich będzie ten napis.
Drugim elementem będzie strzałka.
Możemy ją tutaj wrzucić nasze obrazki,
arrow raigth.
Skopiujemy sobie naszą strzałkę.
Wrzucimy ją tutaj od razu
i jeżeli chodzi o nasz p, tą strzałkę możemy sobie zminimalizować.
Za chwilkę ją wystylizujemy, tak żeby ona nie pokazywała się na małych ekranach.
Generalnie możemy to już teraz zrobić.
Class mamy hidden.
I na md zrobimy sobie block, żeby się strzałka już pokazywała.
Czyli na małych ekranach na urządzeniach mobilnych nie powinno być widoczne.
Jak teraz sobie przejdę no to widzisz, że tutaj jest widoczna ta
strzałka, natomiast na urządzenie mobilne jak przełączę naszą stronę
no to już strzałka nie powinna być widoczna i nie ma jej tutaj na dole.
Dobrze, to mamy już za sobą.
Kolejna rzecz, którą chcemy zrobić
przejdźmy z powrotem tego naszego designu do edytora kodu.
Tutaj ten tekst programistafrontend@gmail.com adres do
współpracy. To wpiszemy sobie w tym miejscu.
I spacja.
Możemy sobie zrobić to w dwóch elementach p. Myślę, że tak
będzie nam łatwiej to ostylować, bo
widzimy, że za każdym razem jest to pod sobą.
Czyli tu też kolejny element p i adres do współpracy.
Za chwilkę zajmiemy się stylizowaniem tego elementu.
Kolejne elementy to będzie ta grupa tutaj z adresem z polityką prywatności.
Czyli możemy sobie tego div'a tutaj zminimalizować.
Mamy element pierwszy, czyli te pytania, element drugi w postaci tych dwóch tekstów
i miejsca tutaj na tą ikonkę po prawej stronie.
Element trzeci, czyli to też będzie grupa.
I tutaj możemy sobie zrobić też paragraf.
I tutaj będzie ulica
Musza
6.
I pod spodem kolejny paragraf to będzie 41-905 Olkusz.
To jest jeden z elementów, który potrzebujemy.
I też możemy.
Wrap with abbreviation div.
I kolejny element to też niech będzie div.
Tutaj potrzebujemy tylko jednego p w postaci polityka
prywatności.
Oczywiście później przerobimy sobie to na jakieś linki, bo prawdopodobnie powinny to
być jakieś linki do jakichś zewnętrznych stron.
Natomiast na chwilę obecną, jako że
budujemy, scaffoldujemy sobie tutaj ten układ, to zostawimy to tak jak jest.
Dobrze myślę, że mamy tą drugą grupę.
Trzecia grupa to są linki do social mediów i tu możemy sobie wykorzystać.
Naszą listę możemy sobie zrobić li.
Albo jako że mamy tutaj po trzy elementy, może ułatwimy sobie sprawę i zrobimy po
prostu div, do którego wrzucimy trzy elementy.
Też niech to będą na początku elementy.
Po prostu p, trzy razy. tutaj niech będzie Linkedin.
Drugim elementem będzie Twitter.
I trzecim elementem będzie GitHub.
Możemy owrapować te elementy też w div
i skopiujemy taką samą strukturę poniżej w tej grupie.
I tutaj tylko podmienimy linki to będzie Dribble.
Drugim elementem, drugim linkiem będzie
Discord i trzecim linkiem, który sobie zrobimy będzie YouTube.
Tu jest nasza grupa, czyli tak mamy grupę z linkami.
To jest to, co jest tutaj.
Mamy grupę z adresem i z polityką prywatności.
I teraz tą grupę z adresem, z polityką
prywatności i grupę z linkami możemy znowu sobie owrapować tutaj w div.
No i mamy już pełną strukturę myślę, która przyda nam się do stylowania.
Ostatnia rzecz, którą musimy sobie zaimplementować tutaj na samym dole.
Niech to będzie span.
W naszym przypadku 2023.
Daniel Noworyta.
Oczywiście Ty do swojego portfolio możesz sobie tutaj wstawiać swoje dane.
Teraz przejdźmy do stylowania na widok
mobilnym i zaczniemy sobie od tego napisu i w ogóle od tła tego elementu.
To jest zinc-950 czyli footer.
Cały footer musi mieć tło na zinc-950 czyli class=bg-zinc-950.
To już jest jedna rzecz, którą udało nam się zaimplementować.
Dodatkowo możemy ustawić na padding na x na 4 domyślnie.
Jako że to jest na widoku mobilnym, dobrze. To już sprawdźmy sobie jak to wygląda.
Mamy ustawiony, no tekstu żadnego nie widzimy
z tego względu, że musimy zmienić domyślne kolory.
Domyślny kolorem tekstu na naszej stronie jest taki ciemny, dlatego też tutaj
po prostu one na siebie wpadają i nic nie widzimy.
Nie masz żadnego kontrastu pomiędzy nimi.
Dlatego przejdźmy do tego pierwszego tekstu.
Mianowicie masz pomysł na projekt, ja sobie
to zminimalizuje tutaj, żebyśmy tylko widzieli poszczególne wartości.
Jak wielkie są te czcionki.
To nam się przyda tutaj w stylizowaniu.
I teraz tak masz pomysł na projekt?
Mamy 24 pixele, regular czyli span class
text i szukamy wartości na xl powinno być 20, czyli 2xl to jest 24 pixele.
Zobacz InteliSense nam bardzo fajnie tutaj podpowiada. Mamy 24 pixele regular.
Reszta może zostać tak jest. Dobrze.
Teraz kolejna rzecz, którą musimy wystylizować to te dwa napisy.
I tutaj mamy, też Tailwind CSS
przychodzi nam z pomocą.
Myślę, że style będą tak naprawdę podobne.
Tych dwóch napisów mamy 24 pixele regular, z tym, że mamy tutaj kolor pomarańczowy i
napis ma być podkreślony, tak? Czyli class=text
może najpierw zaczniemy od orange-600.
Underline
i text- 2xl to jest 24 pixele.
Zapiszę to sobie, sprawdźmy naszą stronę jak już wygląda.
No już mamy ten napis.
Wygląda dużo, dużo lepiej.
Sprawdźmy sobie ten svg, który tutaj mamy i mamy klasę hidden.
Jako, że mamy tutaj już jesteśmy na rozdzielczości md,
to sobie zmniejszymy troszeczkę nasz ekran do tego, żeby to była wielkość
na telefony komórkowe i sobie ten edytor kodu już możemy myślę rozszerzyć.
Sprawdźcie kolejną rzecz.
Tutaj ulica Musza Olkusz.
Mamy font 16 regular roboto, czyli nie musimy nic ustawiać domyślnie.
To jest taki font, tylko musimy zmienić kolor tych wszystkich napisów.
Czyli wejdźmy sobie do
tego div'a, który tutaj wszystko wrapuje i możemy zaznaczyć tutaj tekst.
Jako, że tekst jest inherited to powinniśmy móc napisać zinc tutaj 400 i w tym momencie
wszystkie teksty powinny nam się odpowiednio tutaj wystylizować.
Przynajmniej nadaliśmy im kolor i dodatkowo font jest regular.
Wszystko jest w porządku.
Myślę, że teraz możemy przejść do tych
poszczególnych grup i zacząć je stylizować.
Zobaczmy jak to teraz na chwilę obecną wygląda.
No nie ma tutaj żadnych przerw.
Tutaj jeszcze ten tekst.
Potrzebujemy nadać mu kolor, czyli text-zinc-50,
główny tekst na naszej stopce i zmierzmy sobie odległości najpierw.
najpierw ustalimy sobie może globalnie na naszą stopkę.
Padding na top i padding na bottom.
Zaczniemy od padding'u, na bottom to jest
zawsze łatwiej tutaj zmierzyć, bo on się nie zmienia przez cały czas.
Czyli tutaj mamy ok.
35 powiedziałbym około 40 pixeli, czyli
footer padding na bottom 10 i już powinno nam to odsunąć wszystko od dołu.
Mamy teraz ten Daniel Noworyta 2023.
Też sobie możemy tutaj od razu zrobić
color=text-zinc i analogicznie do tego 400.
Zapisujemy sobie, mamy naszą stopkę.
Może rzeczywiście żeby wyróżnić tą stopkę na tle tych linków wszystkich, które mamy
tutaj, no to tutaj zastosujemy jednak ten główny kolor zinc-50.
I przejdźmy teraz do pudding'u na top.
Jak zobaczymy sobie nasz design to tutaj padding na top.
Mamy w postaci około 80 pixeli, czyli 20.
Przejdźmy sobie do naszego footer'a pt.
20 zapisujemy i odsunęliśmy sobie
teraz masz pomysł na projekt na dół.
Teraz kolejna rzecz, którą musi od siebie
odsunąć to na pewno tutaj ten napis programistafrontend@gmail.com
musimy odsunąć od tego napisu.
Masz pomysł na projekt?
Sprawdźmy sobie teraz tą odległość.
Być może będziemy w stanie ją zmierzyć.
To jest 28 pixeli, czyli ten div tutaj, który nam wrapuję.
Masz pomysł na projekt? I tą strzałeczkę
możemy sobie zrobić klasa margin-top na
ustawmy sobie na razie na 8. Sprawdźmy jak to będzie,
no już fajnie
odsunęło nam się tutaj i teraz zajmijmy się stylizowaniem tych elementów.
Otóż na pewno poszczególne grupy linków
musimy ustawić koło siebie, czyli grid-cols
na 3.
Sprawdźmy, jak już te linki się tutaj nam ustawią.
Oczywiście nie girt, tylko grid.
Zapisujemy sobie, no już linki mamy ustawione dużo ładniej.
Sprawdźmy nasz design.
Musimy teraz odsunąć od siebie te dwa
elementy, czyli tutaj class name możemy zrobić space y.
Czyli odsuniemy od siebie dwa div'y, które są na powiedzmy 4
pixele.
No już odsunęliśmy od siebie te dwa elementy.
Wygląda to podobnie tak jak w naszym designe.
No i całość to tutaj też te dwa elementy musimy od siebie odsunąć.
Czyli tutaj też możemy sobie robić klasę
space-y-4 też udało nam się odsunąć,
natomiast chcemy tę klasę nie zrobić na ten element, tylko chcemy ją zrobić tutaj,
na ten główny element, który odsunie nam politykę prywatności i całą tą resztę.
Dodatkowo potrzebujemy odsunąć tą politykę prywatności od tego adresu tutaj e-mail.
Mianowicie to jest też 24 pixele, czyli tutaj ten element padding top na 6.
Zapisujemy to sobie, sprawdźmy naszą, no już udsunęliśmy sobie
fajnie, tak jak to jest na tym designie.
Jeszcze widzę, że te teksty są jednak troszeczkę jaśniejsze.
Czyli przejdźmy sobie może na zinc-300.
Myślę, że to wygląda dużo lepiej.
I teraz też potrzebujemy o tę samą
odległość przesunąć całą naszą grupę tutaj.
Czyli padding top-6 możemy sobie nadać
tutaj też na ten element, odsuwamy całą
grupę naszych linków i końcowy tekst ma być center.
I możemy sobie ustawić od razu padding y na 4 w naszym przypadku żeby odsunąć 2023.
Po zamianie tutaj span'a na p czyli na emmet liniowy
możemy tutaj już to wyśrodkować sobie i z tym py zostawiłbym tylko p-top, bo już py mamy ustawione
przez cały nasz wraper. No mamy jakby mobilny widok naszej stopki.
Teraz przejdźmy do widoku na tablety i na ekrany desktopowe.