Menu
Coddy logo textTech

Nazwane obszary

Część sekcji Mistrzowskie opanowanie CSS ścieżki HTML w Coddy. Lekcja 33 z 43.

Zamiast umieszczać elementy za pomocą numerów linii, możesz nadawać częściom siatki nazwy za pomocą właściwości grid-template-areas. Ta metoda świetnie sprawdza się przy tworzeniu przejrzystych, czytelnych układów, zwłaszcza gdy pracujesz z wieloma sekcjami, takimi jak nagłówki, paski boczne i stopki. Zobacz poniższy przykład:

Definiujemy kontener za pomocą CSS Grid i używamy grid-template-areas, aby utworzyć nazwany układ:

.container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto auto auto;
  grid-template-areas: 
    "header header header"
    "sidebar content content"
    "footer footer footer";
}

Każdy wiersz tekstu tworzy rząd, a każde słowo w wierszu jest częścią siatki. Jeśli powtórzysz słowo, ten obszar rozciągnie się na większą przestrzeń.

Następnie dopasuj elementy HTML do tych nazw w ten sposób:

.header { grid-area: header; }
.sidebar { grid-area: sidebar; }
.content { grid-area: content; }
.footer { grid-area: footer; }
challenge icon

Wyzwanie

Łatwy

Utwórz układ CSS Grid dla podstawowej strony internetowej z następującymi obszarami, jak na obrazku poniżej:

Ustaw następujące właściwości dla selektora .container:

  • display na grid
  • grid-template-columns na 1fr 3fr
  • grid-template-rows na auto 1fr auto
  • grid-template-areas na:

    "header header"

    "profile main"

    "footer footer"

Przypisz każdy element do odpowiedniego obszaru. Na przykład dla .header ustaw grid-area na header.

Spróbuj swoich sił

<!DOCTYPE html>
<html>
<head>
  <style>
    .container {
      height: 100vh;
      gap: 10px;
      /* Set up your grid container here */
      
    }
    
    .header {
      /* Assign to header area */
      background-color: #f1c40f;
      padding: 20px;
    }
    
    .profile {
      /* Assign to profile area */
      background-color: #3498db;
      padding: 20px;
    }
    
    .main {
      /* Assign to main area */
      background-color: #2ecc71;
      padding: 20px;
    }
    
    .footer {
      /* Assign to footer area */
      background-color: #e74c3c;
      padding: 20px;
    }
  </style>
</head>
<body>
  <div class="container">
    <div class="header">Header</div>
    <div class="profile">Profile</div>
    <div class="main">Main Content</div>
    <div class="footer">Footer</div>
  </div>
</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 Mistrzowskie opanowanie CSS

Poćwicz samodzielnie: Edytor online Web