CodeGym /Kursy /Frontend SELF PL /Mobile-first i desktop-first podejścia

Mobile-first i desktop-first podejścia

Frontend SELF PL
Poziom 26 , Lekcja 2
Dostępny

8.1 Mobile-first podejście

Responsywny web design wymaga adaptacji stron do różnych urządzeń z różnymi rozmiarami ekranów. Istnieją dwa główne podejścia do tworzenia responsywnych layoutów: mobile-first i desktop-first. Każde z nich ma swoje zalety i cechy, które wpływają na proces developmentu oraz końcowy rezultat.

Zasady Mobile-first

Podejście mobile-first zakłada, że development zaczyna się od projektu dla urządzeń mobilnych, a potem rozszerza się na większe ekrany. Ta metoda opiera się na minimalizmie i skupia się na kluczowych funkcjach oraz treściach, niezbędnych dla użytkowników mobilnych.

Zalety Mobile-first:

  • Optymalizacja wydajności: urządzenia mobilne często mają wolniejsze połączenie i ograniczone zasoby, dlatego minimalistyczny design poprawia wydajność
  • Poprawa doświadczenia użytkownika: mobile-first design zapewnia wygodę użycia na urządzeniach mobilnych, co jest szczególnie ważne, biorąc pod uwagę wzrost liczby użytkowników mobilnych
  • Łatwiejsza adaptacja: zaczynając od mobilnego designu, łatwiej dodać dodatkowe funkcje i style dla większych ekranów

Przykład implementacji Mobile-first:

CSS
    
      /* Podstawowe style dla urządzeń mobilnych */

      body {
        font-family: Arial, sans-serif;
        padding: 10px;
      }

      header, main, footer {
        margin: 10px 0;
      }

      header {
        text-align: center;
      }

      /* Style dla większych ekranów */

      @media (min-width: 768px) {
        body {
          padding: 20px;
        }

        header, main, footer {
          margin: 20px 0;
        }

        header {
          text-align: left;
        }
      }

      @media (min-width: 1024px) {
        body {
          padding: 30px;
        }

        header, main, footer {
          margin: 30px 0;
        }
      }
    
  
HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Mobile-first przykład</title>
          <link rel="stylesheet" href="styles.css">
        </head>
        <body>
          <header>
            <h1>Nagłówek</h1>
          </header>
          <main>
            <p>Główna treść</p>
          </main>
          <footer>
            <p>Stopka</p>
          </footer>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • Podstawowe style: definiują style dla urządzeń mobilnych
  • Media queries: rozszerzają style dla tabletów i desktopów

8.2 Desktop-first podejście

Podejście desktop-first zakłada, że development zaczyna się od projektu dla urządzeń desktopowych, a następnie dostosowuje się do mniejszych ekranów. Ta metoda pozwala na początkową realizację wszystkich funkcji i elementów interfejsu, które później ulegają uproszczeniu dla urządzeń mobilnych.

Zalety Desktop-first:

  • Pełna funkcjonalność: development zaczyna się od pełnej wersji strony, włączając wszystkie funkcje i elementy interfejsu
  • Wygoda developmentu: dla wielu designerów i developerów łatwiej jest zaczynać od większego ekranu, gdzie jest więcej miejsca do pracy

Przykład implementacji Desktop-first:

CSS
    
      /* Podstawowe style dla urządzeń desktopowych */

      body {
        font-family: Arial, sans-serif;
        padding: 30px;
      }

      header, main, footer {
        margin: 30px 0;
      }

      header {
        text-align: left;
      }

      nav ul {
        display: flex;
        gap: 10px;
        list-style-type: none;
        padding: 0;
      }

      nav ul li a {
        text-decoration: none;
        color: black;
      }

      /* Style dla mniejszych ekranów */

      @media (max-width: 1024px) {
        body {
          padding: 20px;
        }

        header, main, footer {
          margin: 20px 0;
        }

        nav ul {
          flex-direction: column;
        }
      }

      @media (max-width: 768px) {
        body {
          padding: 10px;
        }

        header, main, footer {
          margin: 10px 0;
        }

        nav ul {
          display: none;
        }
      }
    
  
HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Desktop-first przykład</title>
          <link rel="stylesheet" href="styles.css">
        </head>
        <body>
          <header>
            <h1>Nagłówek</h1>
            <nav>
              <ul>
                <li><a href="#">Główna</a></li>
                <li><a href="#">O nas</a></li>
                <li><a href="#">Kontakt</a></li>
              </ul>
            </nav>
          </header>
          <main>
            <p>Główna treść</p>
          </main>
          <footer>
            <p>Stopka</p>
          </footer>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • Podstawowe style: definiują style dla urządzeń desktopowych
  • Media queries: dostosowują style dla tabletów i urządzeń mobilnych, upraszczając interfejs i ukrywając elementy w miarę zmniejszania ekranu

8.3 Porównanie podejść

Przeprowadzimy małe porównanie podejść Mobile-first i Desktop-first.

Mobile-first:

  • Główny fokus: urządzenia mobilne
  • Proces: rozpoczęcie od minimalistyki, dodawanie dodatkowych funkcji i stylów dla większych ekranów
  • Zalety: optymalizacja wydajności, lepsze doświadczenie użytkownika na urządzeniach mobilnych, łatwiejsza adaptacja dla większych ekranów

Desktop-first

  • Główny fokus: urządzenia desktopowe
  • Proces: rozpoczęcie od pełnej wersji strony, uproszczenie interfejsu dla urządzeń mobilnych
  • Zalety: pełna funkcjonalność i elementy interfejsu od początku, wygoda developmentu na dużych ekranach

Wybór pomiędzy podejściami mobile-first i desktop-first zależy od celów projektu, docelowej grupy odbiorców oraz preferencji zespołu developerskiego. Podejście mobile-first zapewnia optymalizację dla urządzeń mobilnych i poprawia wydajność, natomiast desktop-first pozwala na realizację pełnej funkcjonalności i elementów interfejsu od początku. Zrozumienie cech każdego podejścia pomaga tworzyć responsywne i wygodne dla użytkownika strony internetowe, które skutecznie działają na wszystkich urządzeniach.

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION