Menu
Coddy logo textTech

Formularze w podejściu mobile-first

Część sekcji Praktyczny frontend ścieżki HTML w Coddy. Lekcja 10 z 35.

Formularze są jedną z najważniejszych części internetu: użytkownicy nieustannie coś w nich wpisują, dotykają ich i wchodzą z nimi w interakcje. Projektując formularze z myślą przede wszystkim o urządzeniach mobilnych, skupiamy się na użyteczności na małych ekranach: 

  • Powiększ pola wprowadzania i przyciski, aby użytkownicy mogli łatwo pisać i klikać.
  • Ułóż pola pionowo i użyj pól wprowadzania na całą szerokość.
  • Dodaj wewnętrzny margines i odstępy, aby palce miały więcej miejsca.

Przykład na urządzenia mobilne:

input, button {
  width: 100%;       /* pełna szerokość na małych ekranach */
  padding: 0.75rem;  /* łatwiejsze dotykanie */
  font-size: 1rem;   /* czytelny tekst */
}

Następnie w przypadku większych ekranów (tabletu lub komputera) ulepszamy układ:

  • Wyśrodkuj formularz na stronie.
  • Umieść niektóre pola obok siebie zamiast jedno pod drugim.
  • Dostosuj szerokości i odstępy, aby poprawić wygląd.

Przykład dla większych ekranów:

@media (min-width: 768px) {
  form {
    max-width: 500px;  /* wyśrodkuj i ogranicz szerokość */
    margin: 0 auto;
  }

  .row {
    display: flex;
    gap: 1rem;         /* pola wejściowe obok siebie */
  }
}
challenge icon

Wyzwanie

Łatwy

Otrzymujesz podstawowy formularz HTML. Twoim zadaniem jest ustawienie stylów w podejściu mobile-first:

  1. Elementy wewnątrz formularza powinny być ułożone pionowo. Użyj display: flex i flex-direction: column, a także dodaj trochę gap, aby formularz dobrze wyglądał.
  2. Zastosuj width: 100% i dodaj trochę padding do elementów input, button i textarea, aby były wystarczająco duże na ekranach urządzeń mobilnych i łatwe do dotknięcia.

Spróbuj swoich sił

<!DOCTYPE html>
<html>
<head>
  <title>Mobile-First Forms</title>
  <style>
    body {
      font-family: Arial, sans-serif;
      padding: 1rem;
      background-color: #f0f4f8;
    }

    form {
      
    }

    input, textarea, button {
      padding: 0.75rem;    
      font-size: 1rem;
      border: 1px solid #ccc;
      border-radius: 5px;
    }

    button {
      background-color: #4a90e2;
      color: white;
      border: none;
      cursor: pointer;
    }

    /* Larger screens */
    @media (min-width: 768px) {
      form {
        max-width: 600px;
        margin: 0 auto; /* center form */
      }

      .row {
        display: flex;
        gap: 1rem; /* side-by-side fields */
      }

      .row input {
        width: 100%; /* split space equally */
      }
    }
  </style>
</head>
<body>
   <h1>Contact Us</h1>
  <form>
    <div class="row">
      <input type="text" placeholder="Name" required>
      <input type="email" placeholder="Email" required>
    </div>
    <textarea placeholder="Your Message" rows="4" required></textarea>
    <button type="submit">Send</button>
  </form>
</body>
</html>
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Praktyczny frontend

Poćwicz samodzielnie: Edytor online Web