Strony WWW bez Kodowania
5 godz. 47 min · Webflow · UI, UX i Webdesign
Grzegorz RógIdea ArchitectJeśli edytory wizualne stron kojarzysz z technologiami określanymi jako WYSiWYG - Webflow nie ma z nimi praktycznie nic wspólnego. Kod, który generowany jest przez Webflow to czysty, estetyczny HTML, CSS, JavaScript a o jego jakości decyduje jedynie to, jak dobrze znasz narzędzie a także technologie webowe. Można więc powiedzieć, że Webflow raczej pozwala Ci tworzyć strony w rekordowym czasie, dzięki temu że nie musisz pisać kodu, a układ wyklikujesz w interfejsie. Takie podejście gwarantuje, że nasze strony będą przygotowane w oparciu o semantyczny kod i nowoczesne standardy!
Są praktycznie nieograniczone. Poza tym, że możesz tworzyć strony statyczne, masz też możliwość przygotowania dynamicznych witryn w oparciu o CMS a nawet kompletnych systemów E-commerce, budując je z gotowych komponentów. Webflow tym jednak różni się od "kreatorów stron", że zaczynamy w nim pracę zwykle od czystej kartki, a co za tym idzie możemy zaimplementować dowolny layout! Następnie, z pomocą Webflow możemy opublikować gotową stronę, dodać do niej naszą domenę, dołożyć hosting i... violla! Bez zbędnych konfiguracji strona jest widoczna w sieci. Dodatkowo, klient może edytować ją bezpośrednio w przeglądarce, z pomocą wbudowanego Edytora CMS, a także dodawać treści!
W tym kursie skupimy się na Layoucie, który jest podstawą efektywnej pracy w Webflow. To znaczy, że omówimy elementy semantyczne strony jak również jej ostylowanie. Dowiesz się, jak zastosować w Webflow popularne konstrukcje CSS Layout, takie jak Grid czy Flexbox. Pokażę Ci jak od czystej kartki wdrożyć kompletny layout strony, którą wcześniej przygotowaliśmy w kursie Adobe XD. Jeśli chcesz dowiedzieć się, jak zaprojektowałem samą witrynę - odsyłam Cię właśnie do tego kursu. Możesz przerobić go wcześniej, lub równolegle z kursem Webflow, który masz przed sobą.
Po opanowaniu podstaw Webflow będziesz mógł z powodzeniem tworzyć statyczne witryny, w rekordowym czasie. Poznasz wszystkie zasady konstrukcji i stylowania. Będziesz więc mógł wyruszyć w dalszą podróż z Webflow z kolejnymi kursami, które znajdziesz na eduweb.pl i dodać do Twojej strony dynamiczne dane (w kursie Zaawansowanym przygotujemy bloga), jak również cały system E-commerce (który stworzymy w osobnym kursie). Wszystkie materiały przygotowałem tak, aby się dopełniały i abyś mógł poznać wszystkie, nawet najbardziej zaawansowane funkcje Webflow w rekordowym czasie!
Można powiedzieć, że Webflow ze swoim podejściem i integracją z wieloma narzędziami no-code to WordPress na miarę naszych czasów. Trudno powiedzieć, że w każdym aspekcie tworzenia stron będzie lepsze, jednak WordPress ma niewątpliwie sporo wad, które Webflow eliminuje - przykładem jest dość archaiczny codebase, dziurawe wtyczki, podatność na ataki, konieczność ciągłego utrzymania, własnego hostingu etc. Nie ulega wątpliwości, że Webflow jako platforma zarządzana i nowoczesna, ze świetnie rozwiązanym, skalowalnym hostingiem, darmowym SSL itp. ma wiele atutów. Jednak dalej WordPress będzie przydatny w niektórych zastosowaniach i np. budżetowych rozwiązaniach na potrzeby blogów, oraz tam, gdzie wtyczki mogą zastąpić funkcjonalności, których brakuje w Webflow. Nadal te dwa narzędzia są ważne w zasobniku każdego web designera i na pewno warto je znać a następnie na potrzeby konkretnego projektu - wybrać to bardziej odpowiednie!
Webflow to genialne narzędzie dla wszystkich osób, które chcą zacząć swoją przygodę z tworzeniem stron WWW - prosty interfejs wizualny, rozbudowane możliwości, hosting, SSL, domena - to wszystko w kilka kliknięć. Dlatego ten kurs to dobra propozycja dla osób początkujących, które chcą zacząć tworzyć strony. Ale uwaga! Bez solidnych podstaw HTML i CSS Twoje strony nigdy nie będą optymalnie przygotowane. Będziesz także często sfrustrowany tym, że jakieś ustawienie nie działa - tymczasem będzie to pożądane zachowanie wynikające ze specyfikacji HTML. Dlatego zdecydowanie polecam przed kursami Webflow przerobić przynajmniej kurs podstawowy HTML i CSS, a optymalnie jeszcze kursy CSS Grid i Flexbox. Webflow swój największy potencjał jest bowiem w stanie odkryć przed tymi z Was, którzy rozumieją już technologię web i potrafią tworzyć strony. W rękach takich osób Webflow to narzędzie, które niesamowicie przyspiesza pracę i dowożenie nowych projektów dla klientów. Mimo więc, że Webflow jest przyjazny dla początkujących (którzy nawet równolegle mogą uczyć się HTML), jego zalety w największej mierze docenią web designerzy, UI/UX designerzy i web developerzy, którzy mogą pracować i dostarczać projekty w zupełnie nowy sposób!
Webflow 2020+
Cześć. Witaj w kolejnej lekcji.
Przed nami cztery kafelki które powinniśmy dodać.
Poniżej pod hero. Możemy w zasadzie trochę uporządkować nazewnictwo.
Pierwsza sekcja będzie to header albo
nawigacja nazwijmy ją header. Sekcja druga to będzie hero. Chociaż w zależności od
preferencji możesz tutaj również do tej sekcji do kontentu wrzucić te kafelki ale
my chyba zrobimy je w osobnej sekcji czyli w tej nazwijemy command features
i zrobimy w środku oczywiście tam znajduje się kontent w środku
dodamy do niego link block czyli podobnie jak w menu ponieważ będzie całość będzie
linkiem który będzie kierował do jakiejś przestrzeni na naszej stronie.
Teraz zobaczmy jak to wygląda.
Mamy rozmiar dwieście osiemdziesiąt osiem na sto czterdzieści.
Pytanie czy my ten rozmiar chcemy zrobić
Fixed czyli czy chcemy żeby rzeczywiście nic się tu już nie mogło ruszyć.
Czy chcemy zaplanować sobie to tak żeby
ewentualnie można było mieć jakąś przestrzeń na
dostosowywanie responsywne
Wydaje mi się, że powinniśmy tak zrobić i zobaczyć nawet do tej szerokości te
elementy mogą spokojnie się zmniejszyć czyli do jakichś dwustu dwadziestu jeden pikseli więc
zamiast określać szerokości na sztywno możemy zrobić
minimalną szerokość dwieście dwadzieścia jeden pikseli i minimalną wysokość.
Spróbujemy zrobić to
np. teraz to wygląda jeszcze dobrze, a czyli mamy sto pikseli wysokości.
Cofne te zmiany. Zrobimy.
Max min height
sto pikseli.
To oznacza że nigdy nie będzie to mniejsze
niż zadeklarowana wartości ale może być większa i dokładnie o to nam chodzi.
Jeżeli weźmiemy teraz background ustawmy
kolor tła na kolor biały zaokrąglenie narożników wybierzmy na osiem.
Zdaje się że tak powinno to być.
Zobaczmy jeszcze na te właściwości nie dwanaście jednak cień zero , piętnaście, trzydzieści pięć i oppacity.
Zobaczmy zobaczymy sześć procent.
Ok czyli zmieniamy na dwanaście dodajemy box shadow.
Teraz chcemy przesunąć to po "Y" grecku.
Tylko wybierzmy więc piętnaście i trzydzieści pięć i alfa sześć procent.
koloru czarnego.
Mamy takie delikatne rozmyte tło teraz to powinno znaleźć się w środku.
Link blocku zobaczmy mamy jakiś tekst.
Drugi tekst, podtytuł i obrazek więc
pytanie czy to są rzeczywiście nagłówki albo czy to są akapity.
Nie są czy to są linki.
Raczej nie bo wszystko jest linkiem.
Więc to będą zwykłe teksty dodajemy je z
pomocą "A" i wybieramy tekst block i jeszcze raz "A" tekst block
i teraz mamy na dwa sposoby możemy zrobić albo dodać obrazek albo dodać Div blocka który
będzie zawierał obrazek . Podłożony w CCS kiedy które rozwiązanie wybrać.
Co do zasady jeżeli chcemy mieć zdecydowanie większą kontrolę nad pozycją
takiego obrazka i jego wyrównaniem no to osadzamy go w CSS-ie jako tło
np. dla Div-a. Dzięki temu też pozwoli nam to akurat w
tym konkretnym przypadku ponieważ mamy tylko minimalne wymiary określone pozwoli
nam to zachować jakąś strukturę czy inne nadamy jakąś wielkość dla tego DiV-a i ona
będzie taka sama we wszystkich kafelkach bo gdybyśmy mieli
np. różne rozmiary obrazków mogłoby się okazać że te całe kafelki będą różnych szerokości,
a tego byśmy nie chcieli więc pomoże nam to lepiej trzymać strukturę.
Tak samo wydaje mi się że te dwa tekst block-i
można by było wrzucić do jednego DiV-a po to żeby też trochę łatwiej można było
zarządzać ich strukturą i pozycją wrzuce je w ten sposób
no i będziemy mogli ustawić jeden obrazek jako tło dla ich DiV blocka wybieram jego
preferencje image and gradient wybieram plusik następnie choose image i wskazuje
obrazek którego jeszcze tu nie ma ale w plikach źródłowych do tej lekcji w
folderze. Znajdują się wszystkie cztery które chcemy zaimportować mogę wszystkie
zaznaczyć. Zostaną tutaj wrzucone i teraz pierwszy z nich został zaczytany.
My musimy ustawić go na razie zróbmy to
tak na środku bez powielania i rozmiar zmniejszymy. Zobaczmy jaki
rozmiar ma ta ikonkę sześćdziesiąt pikseli wysokości pięćdziesiąt dwa szerokości.
Myślę że wysokość jest
dla nas kluczowa bo zobaczy że szerokość jest różna w tych elementach, a wysokość
pozostaje niezmieniona czyli sześćdziesiąt pikseli także chcemy ustawić wysokość nie na
auto, a na sześćdziesiąt pikseli natomiast szerokość na auto wystarczy, że wpisujemy
auto i jest może zmienimy ten save na ikonkę z komputerem bo to ona powinna się
tutaj znaleźć. Wygląda w porządku dla całego link blocku.
Proponuję ustawić wyświetlanie na flex
zmienimy zresztą jego nazwę na features block.
Porównajmy to w pionie, a także
rozmieszczenie do lewej i prawej te elementy.
Zaraz dojdzie nam więcej elementów więc będą one miały konkretną szerokość.
Na razie nie mają maksymalnej szerokości więc wszystko jest w porządku.
Dalej mamy właściwości tekstu które powinniśmy pobrać stąd.
Czyli to będzie DM Sans z dziesięć bold i
wypełnienie robimy kolorem zielonym wybierzmy właściwości DM Sans bold. Rozmiar
wybierzemy na dziesięć i to nam stworzy automatycznie klasę.
Przypominam więc możemy ją od razu jakoś nazwać.
Może to być caption i będziemy mieli wielkością dziesięć przecież
wszystkie te rzeczy zrobiona jedyna rzecz którą będą się różnić to kolor.
W związku z tym zrobimy caption zostawimy
dla niego jeszcze wybierzmy dla niego more type options czyli Capital light.
Ostatnia rzecz to wysokość interlini była na trzynaście pikseli.
Teraz już możemy przejść i dodać tutaj kolejną combo klasę czyli to będzie nasza
podstawa, a będzie będą się zmieniać tylko kolory więc dodajmy
klasę która oznaczy namy nam kolor tylko pytanie czy dobrym rozwiązaniem jest np.
wpisać tutaj nazwę green albo nie wiem jakąś nazwę koloru.
Nie do końca z tego powodu, że później
gdybyśmy to zmienili na niebieskie to klasa będzie green a będzie pod spodem
kolor niebieski. Zdecydowanie lepiej jest to nazywać
np. nazwami naszych brand kolorów
np. brand jeden, brand dwa itd.
Albo nazywać to nazwami akcji.
Często mamy też kolory błędu czyli np.
można było klasę nazwać error
albo kolory accept czyli zielone albo working powiedzmy pomarańczowe czy żółte.
W naszym przypadku nazwijmy to po prostu może brand jeden na razie
ale pamiętaj że będzie to zmiany.
Czyli warto będzie się zastanowić nad tą nomenklatura.
Natomiast my teraz wybierzemy kolor
kopiuje wartość szesnastką i wrzuca ją w kolor.
Czyli ta klasa brand jeden będzie nam nadpisywała tylko i wyłącznie kolor dzięki
czemu zaraz tworząc kolejne rzeczy na razie przekopiujmy tu tekst będziemy mogli
bazować na klasie Caption, a dodawać sobie tylko kolejne klasy z kolorami
software services.
I przy okazji istotna informacja ponieważ
tutaj mieliśmy twardy enter wystawiony w narzędziu graficznym.
Dzięki temu, a raczej przez to twardy enter
wstawił przed serwis możemy wcisnąć backspace aby go usunąć.
I na razie możemy tak zrobić ale
warto mieć świadomość tego kiedy to robić, a kiedy nie.
Kiedy rzeczywiście. Chcemy złamać taki tekst możemy wcisnąć enter i wtedy
dostaniemy HTML- u po prostu zawsze będzie to złamany.
Na ogół nie jest to dobra praktyka na ogół
powinniśmy zostawić tak jak jest bo może się okazać że w blokach później responsownych
będzie nam łamać tekst . Jeszcze gdzieś indziej
np. będziemy mieli taki długi tekst przed
Services, a później my jeszcze za for twardy
break line byśmy zrobili to wtedy wyglądałoby to kiepsko każde słowo by
np. było w osobnej linii więc możemy jako stan
wyjściowy zostawić sobie bez tego twardego break line.
I teraz jeszcze warto na tym całym
elemencie ustawić margines ustawia go z każdej strony na trzydzieści pikseli.
Dlaczego. To jest dosyć dobre rozwiązanie bo jak
będziemy mieli więcej linii tekstu to też ewentualnie ten margines zostanie
zachowany choć akurat nie wiem czy to będzie dobry pomysł bo wysokość
tych całych kafelków też ma znaczenie ale na razie nie martw się.
Zrobimy tutaj nazwę klasy features text, a na samym obrazku też wypadałoby
ustawić margines ale tylko z prawej strony trzydzieści pikseli.
I to będzie features image.
No to teraz zajmijmy się kontentem i tym jak tutaj pracować z tego typu elementami
Wybieramy command return możemy dodać do niego kolejną klasę.
Nie chciałbym żeby to było hero ale możemy na chwilę skorzystać z tej klasy hero.
Dlaczego dlatego że ona jest flex-boxem.
Zrobiliśmy ją i gdybyśmy do flexboxa teraz zaczęli ładować
te elementy to one bardzo ładnie będą się już rozkładać. Możemy nimi zarządzać.
Ale wydaje mi się że w tej sytuacji cofne
na to i zamiast pracować na kontencie dodawać tu kolejną klasę.
To tak naprawdę będzie mi wygodnie pracować z grid.
Będę miał większe możliwości pozycjonowania rozmieszczenia tych
elementów tych elementów w gridzie. Gdzie zaraz pokaże też dlaczego.
Więc dodam jeszcze jeden pomocnicze kontent czyli jeszcze jeden block który
teraz trafił w złe miejsce ale umieszcze go bezpośrednio pod kontentem i wrzuce do DiV-a
tego dwa features-block , a sam DiV. Będziemy chcieli zrobić żeby miał display grid
Grid-em zarządziły w ten sposób że będzie miał cztery kolumny i jeden rząd czyli
jeden rząd usunięty. Zostawiając domyślne opcje będziemy mieli
odstęp szesnaście pikseli i wielkości jednej frakcji.
Co to znaczy jedna frakcja że w relacji do
pozostałych będzie to wszystko jeden do jednego.
Możemy to zmieniać że to jest zero, siedemdziesiąt pięć a te są
po jednej przykładowo więc w ten sposób rozmieszczamy. U nas mają być równe.
Więc rzeczywiście mają być po jednej frakcji ewentualnie później możemy jeszcze.
Dodać sobie wariant min i max czyli minimum
np. dwieście pikseli tak jak zrobiliśmy wtedy i nie będzie nam to się zmniejszało.
Poniżej tych dwieście pikseli więc można by w
zasadzie było to dodać ale na razie zostawmy to.
Bez tego jeżeli coś zadziała w deafulcie to czemu to zmieniać wybieram polecenie done.
Features block mogę teraz skopiować i wklej jeszcze trzy razy m.in..
Fajną zaletą takiego rozwiązania jest to że mamy elementy umieszczone. Centralnie od
lewej i prawej strony, a ten odstęp pomiędzy nimi będzie się zmieniał.
W przypadkuf flex- boxa musielibyśmy nadać im
jakieś konkretne odstępy od siebie czyli marginesy.
I gdybyśmy nadali z prawej strony no to
byśmy mieli też margines gdybyśmy z lewej to tło byśmy mieli margines. Wtedy trzeba
by było raczej skorzystać z customowego CSS-a, a żeby dopisać żeby któryś z tych
elementów nie miał marginesu czyli dodać do niego jeszcze jakąś inną klasę więc
wydaje mi się że to jest bardziej eleganckie rozwiązanie.
A poza tym daje nam naprawdę sporo
możliwości nazwijmy to features -grid i zobaczymy jak będzie się zachowywać w
widoku Responsywnym. W widoku tabletowym przejdę do ustawień i mogę tu wyrzucić
jedną kolumnę i drugą kolumnę. W ten sposób automatycznie wszystko przeleci mi
i musimy utworzyć tutaj jeszcze jeden rząd żeby było ok.
Wybieram escape i teraz nawet skalowanie tego działa bardzo dobrze
no bo mamy tylko minimalna szerokość określoną wszystko jest ok.
W wariancie telefonowym. Zobaczmy co my chcemy tutaj mieć to dalej jest ok.
Aż do takiego rozmiaru.
Myślę że jest w porządku i tyle.
Ujawnił się problem który
właśnie powiedziałem wcześniej o nim że mamy twardą spacje wpisaną tutaj.
Więc to jest element HTML-owy możemy tą
twardą space usunąć. Jestem upewnić się, że twarde spacji zostały usunięte.
No i teraz ten tekst się trochę lepiej rozlewa więc wydaje mi się że tutaj też
jest to ok więc jedyne miejsce gdzie chcemy to zmienić to tutaj w widoku
telefonowym. Gdzie chcemy uzyskać jedną kolumnę i cztery rzędy.
I teraz jest w porządku. Command Shift "P"
spróbujmy to podejrzeć jest ok. Cały czas aż do końca jest w porządku.
Poza jednym problemem mianowicie nie
wyświetlają się ikonki dlaczego się nie wyświetlają zaznaczony features image.
Co prawda obrazek jest tutaj podłożony komputery svg ale w momencie gdy
podkładamy z pomocą CSS-a nie wystarczy zadeklarować tutaj np.
minimalnej szerokości po prostu HTML.
Nie widzi żadnej szerokość żadnej. Wielkości tego kontenera i nie wyświetla.
I może to jest jakiś mały back w podgląd webflow.
Powinno to być rzeczywiście widoczne.
A może nie może tak powinno być więc to co możemy zrobić to zadeklarować tutaj np.
minimalną szerokość i minimalną wysokość na sześćdziesiąt pikseli.
I teraz już wszystko powinno być dobrze również w HTML u wyświetla wyświetlana
poprawnie te obrazki, a więc ostatnia rzecz która została nam tutaj do zrobienia to
przygotowanie tego kontenera tak aby był uniwersalny pod obrazek ponieważ nie
podmieniamy samego obrazka, a będziemy musieli podmieniać go w CSS-ie to musimy mieć inną
klasę. Więc features image z warto żeby teraz zresetować. Ten obrazek wyrzucić go stąd
i zostawić tą klasę generyczną natomiast dodać teraz combo klasę np. Komputer
Komputer będzie miał już image gradient wystawiamy odpowiedni obrazek chyba jest to
metoda trochę bardziej pracochłonne niż gdybyśmy zrobili z tego
to zostawimy auto
i wysokość sześćdziesiąt niż gdybyśmy zrobili z tego symbol ale nie wiem trudno powiedzieć.
Ma to swoje wady i zalety co robimy teraz
m.in. spora kontrola nad tymi obrazkami w CSS-ie i musimy jeszcze przykleić teksty
Wkleiłem to już marketing automation ale jeszcze muszę prześledzić samo marketing
i zadbać o to żeby nie było to brand jeden to mogę usunąć zrobimy z tego Brand dwa.
Możesz to oczywiście skipnąć.
Jeśli już dokładnie wiesz o co tutaj chodzi bo to będzie tylko kopiowanie i wklejanie.
A może trochę tych wartości stąd skopiować
ale chcę żeby ten materiał był kompletny więc chcę ci to wszystko też pokazać
wklejamy kolory i to będzie brand dwa jeśli chodzi o features image tutaj znowu.
dodajemy będziemy musieli najpierw dać combo klasę czyli jak.
No właśnie bo jeżeli nie dodaliśmy combo klasy zobacz wszędzie ten features image
nam skoczył więc cofnijmy najpierw dodam combo klasę.
To będzie kolejna ikonka.
Czyli możemy powiedzieć że to jest marketing i wrócimy tutaj.
Image gradient. Wskażemy chyba to.
Znów auto tutaj sześćdziesiąt no trzeba tych czynności trochę powtórzyć.
Ale w ten sposób mamy dobrze przygotowane komponenty teraz mobile.
I znów zmienie software na mobile wyrzuce tą klasę zrobię Brand trzy.
To będzie trzeci kolor.
Pobiorę sobie stąd ten kolor wartość szesnastkową do schowka.
I mamy jeszcze features image do którego dorzuci się mobile.
I teraz ustawi na niego obrazek z telefonem.
Właśnie dzięki temu że zrobiliśmy to w CCS-ie.
No to teraz np.
jeśli ten obrazek jest troszeczkę inny niż
pozostałe będziemy mieli sporą kontrolę nad tym jak on się wyświetla możemy go
wyświetlić na środku ale możemy też dodać go do lewej do prawej
nawet co do procenta tutaj określić czy piksela takiej kontroli nie mielibyśmy jak
gdybyśmy to robili za pomocą zwykłych obrazków.
Kolejna zaleta zwykłych obrazków
stawianych dzięki img jest znaczników głębia jest taka to
upewnij się że nie ma jeszcze twardych spacji bo po kopiowałem
jest taka, że są one czasem trochę bardziej przyjazne jeśli chodzi o SEO ponieważ
jeśli osadzamy się coś w CSS-ie nie jesteśmy w stanie dodać znaczników alt
do takiego elementu czyli nie możemy tego tekstu alternatywnego dodać.
Czasem nie jest to dobre jeśli chodzi o indeksowane w wyszukiwarkach.
To już będzie brand cztery.
Zbliżamy się do końca.
Wklejam ten kolor.
I ostatnia rzecz która została mi do
zrobienia to tutaj blockchain jako combo klasa i dodajemy obrazek.
Trochę trzeba było klikać, a wydaje mi się,
że tak czy inaczej jest to w miarę szybka sprawa.
Auto, a tutaj sześćdziesiąt pikseli. To na środku i w ten sposób mamy zrobione kolejne komponent.
Teraz musimy jeszcze zadbać o te wszystkie
odstępy aby były one poprawne zwłaszcza w wersjach responsowych.
Do usłyszenia.