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.
Kolejną rzeczą, którą powinniśmy się zająć
jest pojedynczy projekt, który pokazujemy tutaj na widoku mobilnym.
Tych projektów mamy 3, są ustawione pod sobą.
Zobacz, że później na widoku tabletów i mobilnym troszeczkę zmieniają się układy.
Natomiast myślę, że jak rozpoczniemy sobie
od zbudowania takiego jednego elementu i poszczególnych tych elementów składowych,
myślę, że będziemy na dobrej drodze, żeby uzyskać też pojedyncze widoki.
Czyli mamy nasz
header i potrzebujemy teraz pojedynczego elementu z naszym projektem.
I tutaj będzie div, który opakuje nasz image.
Jeżeli chodzi o source
to ja już sobie skopiowałem obrazki i w pierwszy projekt niech to będzie pocketsub.png
możemy sobie zrobić tutaj alt pocketsub. Zapiszemy go sobie.
Obrazek już powinien się wczytać na naszej stronie.
Dodatkowo będziemy potrzebowali jakąś tutaj h1, h2, w naszym przypadku
nazwę projektu i jakiś paragraf, który powie nam co to za projekt.
Krótki opis, który chcemy też wyświetlić na naszej stronie.
Zapiszemy sobie ten element.
To jest jakby główny element naszego projektu.
Jeszcze pod spodem tutaj pod tym p musimy zawrzeć tą ikonkę linku i link do naszego
projektu, czyli tu też prawdopodobnie będziemy musieli svg plik opakować.
Ja sobie tutaj zrobię notatkę svg i pod spodem niech to będzie link, który odnosi nas do
packetsub.com. I to jest jakby pojedynczy element.
Przejdźmy sobie do naszej strony.
Zobaczmy czy już jakoś to wygląda.
No tekstów na razie nie widzimy z tego
względu, że nie mamy ich odpowiednio wystylizowanych.
Czyli zajmijmy się może od stylizacji tych tekstów.
Może najpierw zaczniemy od tego.
Sprawdźmy, jaka to jest wielkość czcionki.
16 Czyli mamy base semibold jeżeli chodzi
o tą h2 czyli klasa font-semibold text-orange 600.
I tutaj mamy odległość do góry jest 16 pixeli, czyli możemy zrobić na padding na
top na 4 odsuniemy to i padding na bottom zrobimy sobie na 1.
To pozwoli nam odsunąć od reszty tekstu ten tekst.
Tutaj mamy 12 regular czyli class
i text-xs to będzie coś odpowiedzialne za 12 pixeli.
Widzimy, że w Tailwind'zie xs.
Domyślnie ten font size jest 12 pixeli. Zapiszemy to sobie.
Przejdźmy do naszej strony, zobaczmy.
Tekstu jeszcze nie widzimy z tego względu, że musimy tutaj nadać kolor zinc
niech to bedzie w naszym przypadku 400. No i mamy
ta intuicyjna platforma zmienia sposób zarządzania cyklicznymi płatnościami.
Jest jeden problem z tym obrazkiem.
Musimy sobie zacząć go tutaj stylizować, czyli zróbmy sobie tutaj klasę i width full,
relative.
Overflow zrobimy na hidden.
Na razie tak, przejdźmy do stylowania obrazka.
Class absolute inset-0, żeby umieścił się
w środku tego div'a. Width na full i h też na full. Aspect
square to samo nadamy tutaj aspect square na nasz wrapper.
No i już mamy nasz obrazek.
Jeszcze przydałoby się to zaokrąglić
bardziej, bo z tego co wiem to na designie mamy, no nie mamy tutaj
w sumie, nie mamy żadnych zaokrągleń
większych, czyli możemy sobie to zostawić bez zaokrągleń, bez zaokrąglania,
przepraszam. Mamy ten pierwszy element za sobą.
Jeszcze tutaj nam brakuje pod spodem tej ikonki.
Czyli ja sobie teraz ją wyeksportuje z Figmy i po chwili tutaj po wyeksportowania z pliku z
Figmy wkleimy sobie tą ikonkę tutaj już powinniśmy ją mieć też w naszym projekcie,
mamy. Natomiast jeszcze tekstu nie widać z tego
względu, że tekst nie ma odpowiedniego koloru, czyli class text-zinc 50
w naszym przypadku już widzimy to no i msimy ostylować odpowiednio wrapper na tę
ikonkę, którą mamy tutaj w postaci tego pliku, tego kodu svg i blokowego linku A,
czyli to jest element liniowy, to mamy ikonkę.
Myślę, że tutaj możemy zadziałać sobie flex gap
na 4 i już mamy wystylizowany ten element tutaj.
Możemy sobie wyśrodkować to wszystko, czyli justify-center.
I potrzebujemy jeszcze py ustawić na 4,
żeby odsunąć ten element od całej reszty tego projektu.
Dobrze.
Mamy pierwszy projekt, teraz myślę, że możemy zająć się skopiowaniem reszty
projektów tak żeby odzwierciedlić dokładnie ten widok.
Ja sobie to zrobię tutaj już poza ekranem.
Tobie też polecam po prostu skopiować ten pierwszy komponent pod sobą i pozamieniać
odpowiednio dane. Po odpowiednim skopiowaniu tych elementów u Ciebie
powinny pojawić się tutaj 3 elementy.
Tak jak u mnie mamy bliźniaczo podobne komponenty tutaj w tym przypadku tylko w
pierwszym mamy ten link do strony pocketsub, natomiast w każdym kolejnym nie mamy.
Musimy sobie jeszcze tutaj je od siebie odsunąć.
Także teraz, w tym momencie możemy
wykorzystać sobie tylko i wyłącznie poodsuwać te elementy od siebie na takiej zasadzie, że
jak mamy drugi element tutaj, to nadamy mu po prostu klasę padding bottom na 4.
W tym momencie odsunie nam to od tego opisu.
I tutaj ten element też zostawimy sobie na razie tak jak jest.
Potrzebujemy jeszcze tutaj
dodać kolejny element, bo mamy w designie zobacz więcej link z tą strzałeczką,
która jest po prawej stronie, czyli ten element tutaj
potrzebujemy sobie dodać na koniec, czyli span zobacz więcej i poniżej tego span'u,
ja teraz wkleję sobie ten arrow w postaci
pliku svg. Już po wklejeniu sobie zapisaniu tego.
Musimy sobie teraz tylko ustawić te elementy koło siebie.
Czyli flex gap ustawimy sobie na 6.
Items center.
Justify też na center, żeby wyśrodkować ten napis z tą strzałką.
Przejdźmy do naszej strony internetowej.
Zobaczmy jak to teraz wygląda.
Mamy napis, który jest jeszcze niewidoczny
z tego względu, że musimy sobie włączyć tutaj text-zinc-50 i font-semibold.
Sprawdźmy samibold czy bold mamy tutaj?
Jest to bold.
Zmienimy sobie tutaj na bold, no i już.
Jeszcze teraz odsuniemy sobie ten element, czyli nadamy mu padding na y na 4.
Odsunie on od topu i od dołu naszej sekcji.
Czyli już mamy mobilny widok naszej sekcji z wybranymi projektami.
Tutaj też myślę warto byłoby odsunąć ten pierwszy element, czyli class
padding top na 4, żeby zwiększyć tą odległość tutaj od tego napisu.
Tak, to tyle.
Teraz przejdziemy sobie do stylowania responsywnego tej sekcji.