You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/pl/3-terrarium/2-intro-to-css/assignment.md

7.5 KiB

CSS Refactoring Assignment

Cel

Przekształć swój projekt terrarium, aby używał nowoczesnych technik układu CSS! Zrefaktoryzuj obecne podejście z pozycjonowaniem absolutnym, wprowadzając Flexbox lub CSS Grid dla bardziej utrzymywalnego, responsywnego projektu. To zadanie stanowi wyzwanie, aby zastosować nowoczesne standardy CSS, jednocześnie zachowując atrakcyjny wygląd Twojego terrarium.

Zrozumienie kiedy i jak używać różnych metod układu to kluczowa umiejętność współczesnego tworzenia stron internetowych. To ćwiczenie łączy tradycyjne techniki pozycjonowania z nowoczesnymi systemami układów CSS.

Instrukcje zadania

Faza 1: Analiza i planowanie

  1. Przejrzyj obecny kod terrarium - Zidentyfikuj elementy, które obecnie używają pozycjonowania absolutnego
  2. Wybierz metodę układu - Zdecyduj, czy Flexbox czy CSS Grid lepiej odpowiada Twoim celom projektowym
  3. Szkicuj nową strukturę układu - Zaplanuj, jak będą zorganizowane kontenery i elementy roślin

Faza 2: Implementacja

  1. Stwórz nową wersję swojego projektu terrarium w osobnym folderze
  2. Zaktualizuj strukturę HTML w razie potrzeby, aby wspierała wybraną metodę układu
  3. Refaktoryzuj CSS, używając Flexbox lub CSS Grid zamiast pozycjonowania absolutnego
  4. Zachowaj spójność wizualną upewnij się, że rośliny i słoik terrarium znajdują się w tych samych miejscach
  5. Zaakceptuj responsywne zachowanie układ powinien płynnie dostosowywać się do różnych rozmiarów ekranów

Faza 3: Testowanie i dokumentacja

  1. Testowanie na różnych przeglądarkach sprawdź, czy projekt działa w Chrome, Firefox, Edge i Safari
  2. Testowanie responsywności sprawdź układ na ekranach mobilnych, tabletach i desktopach
  3. Dokumentacja dodaj komentarze do CSS wyjaśniające wybory dotyczące układu
  4. Zrzuty ekranu zrób zdjęcia swojego terrarium w różnych przeglądarkach i rozmiarach ekranów

Wymagania techniczne

Implementacja układu

  • Wybierz JEDNĄ metodę: zastosuj Flexbox LUB CSS Grid (nie obie na tych samych elementach)
  • Projekt responsywny: używaj jednostek względnych (rem, em, %, vw, vh), zamiast stałych pikseli
  • Dostępność: zachowaj właściwą semantykę HTML i tekst alternatywny
  • Jakość kodu: stosuj spójne konwencje nazewnictwa i logiczną organizację CSS

Nowoczesne cechy CSS do uwzględnienia

/* Example Flexbox approach */
.terrarium-container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  align-items: center;
  justify-content: center;
}

.plant-containers {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1200px;
}

/* Example Grid approach */
.terrarium-layout {
  display: grid;
  grid-template-columns: 1fr 3fr 1fr;
  grid-template-rows: auto 1fr;
  min-height: 100vh;
  gap: 1rem;
}

Wymagania dotyczące wsparcia przeglądarek

  • Chrome/Edge: 2 najnowsze wersje
  • Firefox: 2 najnowsze wersje
  • Safari: 2 najnowsze wersje
  • Przeglądarki mobilne: iOS Safari, Chrome Mobile

Produkty końcowe

  1. Zaktualizowany plik HTML z ulepszoną strukturą semantyczną
  2. Zrefaktoryzowany plik CSS używający nowoczesnych technik układu
  3. Zbiór zrzutów ekranu pokazujących kompatybilność międzyprzeglądarkową:
    • Widok desktopowy (1920x1080)
    • Widok tabletowy (768x1024)
    • Widok mobilny (375x667)
    • Co najmniej 2 różne przeglądarki
  4. Plik README.md dokumentujący:
    • Wybór układu (Flexbox vs Grid) oraz uzasadnienie
    • Trudności napotkane podczas refaktoryzacji
    • Notatki o kompatybilności przeglądarek
    • Instrukcje uruchomienia Twojego kodu

Kryteria oceny

Kryteria Wzorcowa (4) Zaawansowana (3) Średnia (2) Początkowa (1)
Implementacja układu Mistrzowskie użycie Flexbox/Grid z zaawansowanymi funkcjami; w pełni responsywne Poprawna implementacja z dobrą responsywnością Podstawowa implementacja z drobnymi problemami responsywności Niekompletna lub błędna implementacja układu
Jakość kodu Czysty, dobrze zorganizowany CSS z znaczącymi komentarzami i spójnym nazewnictwem Dobra organizacja z kilkoma komentarzami Wystarczająca organizacja z minimalnymi komentarzami Słaba organizacja; trudna do zrozumienia
Kompatybilność międzyprzeglądarkowa Perfekcyjna spójność we wszystkich wymaganych przeglądarkach z zrzutami ekranu Dobra kompatybilność z udokumentowanymi drobnymi różnicami Niektóre problemy z kompatybilnością, które nie psują funkcjonalności Poważne problemy lub brak testów kompatybilności
Projekt responsywny Wyjątkowe podejście mobile-first z płynnymi punktami przerwania Dobre zachowanie responsywne z odpowiednimi punktami przerwania Podstawowe funkcje responsywne z pewnymi problemami układu Ograniczone lub wadliwe zachowanie responsywne
Dokumentacja Kompleksowy README z szczegółowymi wyjaśnieniami i wglądem Dobra dokumentacja obejmująca wszystkie wymagane elementy Podstawowa dokumentacja z minimalnymi wyjaśnieniami Niepełna lub brak dokumentacji

Przydatne zasoby

Przewodniki po metodach układu

Narzędzia do testowania przeglądarek

Narzędzia jakości kodu

Dodatkowe wyzwania

🌟 Zaawansowane układy: Zaimplementuj zarówno Flexbox, JAK i Grid w różnych częściach projektu
🌟 Integracja animacji: Dodaj przejścia lub animacje CSS kompatybilne z nowym układem
🌟 Tryb ciemny: Zaimplementuj przełącznik motywu bazujący na właściwościach niestandardowych CSS
🌟 Zapytania kontenerowe: Użyj nowoczesnych technik zapytań kontenerowych do responsywności na poziomie komponentów

💡 Pamiętaj: Celem nie jest tylko sprawienie, by działało, ale zrozumienie, DLACZEGO wybrana metoda układu jest najlepszym rozwiązaniem dla tego wyzwania projektowego!


Zastrzeżenie:
Ten dokument został przetłumaczony za pomocą serwisu tłumaczeń AI Co-op Translator. Mimo że dokładamy starań, aby tłumaczenie było jak najbardziej precyzyjne, prosimy mieć na uwadze, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego języku źródłowym powinien być uznawany za źródło wiarygodne. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z wykorzystania tego tłumaczenia.