Верстка и веб-дизайн. 3 курс. Практическое занятие №4. Несимметричный tiles-макет страницы на CSS GL

Вам нужно создать страницу в Tiles-формате, выполненную по правилам CSS GL


I) Параметры стиля:
1) Сначала задаем параметры контейнера:

* {
     box-sizing: border-box;
}

body {
     background: #1c1e22;
     color: #fff;
}

2) Затем указываем параметры для браузера, если он не поддерживает GL:

.support-warning {
     background: #ccb11c;
     color: #000;
     display: block;
     font-family: 'Raleway', sans-serif;
     font-weight: 700;
     opacity: 0.95;
     padding: 3rem;
     position: fixed;
     text-align: center;
     top: 0;
     left: 0;
     width: 100%;
     z-index: 5;
}

.support-warning a {
     color: inherit;
}

3) Теперь класс упаковки грида:

.l-grid {
     display: flex;
     flex-wrap: wrap;
}

.l-grid > .l-grid__item {
     flex: 1 0 auto;
}

.l-grid--4x4 > .l-grid__item {
     width: 25%;
}

@supports(display: grid) {
     .support-warning {
          display: none;
     }

4) Ширина и отображение:


     .l-grid--4x4 > .l-grid__item {
         width: auto;
     }
     
     .l-grid {
          display: grid;
     }
}

5) Выравнивание контента по колонкам в соответствующих классах:

.l-grid--4x4 {
     grid-template-columns: repeat(4, 1fr);
     grid-template-rows: repeat(3, minmax(13rem, 1fr));
}

.l-span-column-2 {
     grid-column-start: span 2;
}

.l-span-row-2 {
     grid-row-start: span 2;
}

.l-full-height {
     min-height: 100vh;
}

.align-center {
     align-items: center;
     justify-content: center;
}

.content {
     padding: 3.5rem;
     max-width: 400px;
}

6) Заголовочные шрифты в классе заголовка и описания укажите свои

.heading {
     font-family: '?', serif;
     font-size: 1.5rem;
     font-weight: 700;
     line-height: 1.2;
     margin-bottom: 1rem;
}

.description {
     font-family: '?', sans-serif;
     font-size: 1rem;
     line-height: 1.5;
}

7) Темы цветных блоков (их три - левая вверху и правые внизу) нужно задать как классы по типу theme-blue и для каждого класса указать цвет в теме латиницей, кодом фона (background) и кодом цвета шрифта (color). Выберите свои цвета.


8) Положение иллюстраций задаете через класс фона в виде фотографий:

.img-background {
     background-size: cover;
     background-repeat: no-repeat;
     background-position: center center;
     color: #fff;
}

9) Сами иллюстрации располагаете внутри ячеек грида. В них вы используете свои картинки, загружая их в репозиторий. Название фона должно совпадать с названием файла. В параметры градиента можно не вмешиваться. Пример отображения иллюстраций (у вас их три):


.img-background--sea {
     background-image: linear-gradient( rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('расположение фото1');
}

.img-background--wave {
     background-image: linear-gradient( rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('расположение фото2');
}

.img-background--horizon {
     background: linear-gradient( rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('расположение фото3');
     background-size: cover;
     background-repeat: no-repeat;
     color: #fff;
}



II) HTML:

10) Указываете стандартное предупреждение для браузера:

<div class="support-warning">
    Найдите браузер с поддержкой гридов!
</div>

11) Класс блока без картинки с заполнением цвета (первый грид слева), а также расположенные в нем заголовок и описание:

<div class="l-grid l-grid--4x4 l-full-height">
     <div class="theme-blue l-grid__item l-grid align-center l-span-column-2 l-span-row-2">
          <div class="content">
          <h2 class="heading">
               Ваш заголовок
          </h2>
 <p class="description">ваш текст</p>
          
          </div>
     </div>

12) Класс блока с картинкой:

<div class="img-background img-background--sea align-center l-grid__item l-grid l-span-column-2">
          <div class="content">
          <h2 class="heading">
              Ваш заголовок
          </h2>
 <p class="description">ваш текст</p>
         
          </div>
     </div>

Обратите внимание, что в названии фона есть имя класса картинки (в данном случае - sea) - его необходимо соблюдать в том же порядке, который у вас в .css - иначе фон не подключится!

13) Второй блок с картинкой:

<div class="img-background img-background--wave align-center l-grid l-grid__item l-span-column-2">
           <div class="content">
          <h2 class="heading">
               Ваш заголовок
          </h2>
 <p class="description">ваш текст</p>
          
       
          </div>
     </div>

14) Третий блок:
     
       <div class="img-background img-background--horizon align-center l-grid l-grid__item l-span-column-2">
           <div class="content">
          <h2 class="heading">
               Ваш заголовок
          </h2>
           <p class="description">ваш текст</p>
          
          
          </div>
     </div>

15) Далее также как в первом случае - цветной фон без фото:

<div class="theme-navy l-grid l-grid__item align-center">
           <div class="content">
          <h2 class="heading">
               Заголовок
          </h2>
          
           <p class="description">текст</p>
         
          </div>
     </div>

16) И еще раз с другим цветом:
     
     <div class="theme-teal l-grid l-grid__item align-center">
           <div class="content">
               <h2 class="heading">
                    Заголовок 2
                </h2>
 <p class="description">текст 2</p>
         
          </div>
     </div>

17) Закрываете все параметры в HTML.

18) В любой из гридов с фото встройте в текст описания ссылку произвольного цвета (кроме синего) на произвольный сайт.

Оставляете ссылку на выполненное задание в комментарии к данному посту до 15:00 22 марта.


Tiles grid
This demo requires CSS Grid. The current browser you're using doesn't support it and is using a Flexbox fallback. Find a grid-enabled browser.

Marine

your description here

Sea

your description here

Wave

your description here

Blank

your text

2nd blank

your text

Комментарии

  1. прошлое задание: https://anuta301sinkova.blogspot.com/2025/03/3-grid-layout.html
    это занятие: https://anuta301sinkova.blogspot.com/2025/03/3-4-tiles-css-gl.html

    ОтветитьУдалить
    Ответы
    1. Принято, оценка за предыдущее задание - "хорошо"

      Удалить
  2. https://smotrikisa.blogspot.com/2025/03/blog-post_21.html

    ОтветитьУдалить
  3. Анастасия Федякина https://nastuuuuuushk.blogspot.com/2025/03/3-4-tiles-css-gl.html

    ОтветитьУдалить
    Ответы
    1. Оценка "хорошо", не выполнен пункт 18 задания - нет ссылки.

      Удалить
  4. Ответы
    1. Оценка "хорошо", нет ссылки, указанной в пункте 18.

      Удалить
  5. Шагивалеев
    https://danyashagivaleyevlll.blogspot.com/2025/03/4.html

    ОтветитьУдалить
  6. Этот комментарий был удален автором.

    ОтветитьУдалить
    Ответы
    1. Не принято. В CSS нет фоновых картинок. Их нужно встроить по ссылкам через репозиторий. Жду исправленный вариант.

      Удалить
  7. Этот комментарий был удален автором.

    ОтветитьУдалить
    Ответы
    1. Не принято. У вас не совпадают имена цветов в css и html. Например, первый блок цвета у вас в css - theme-Salmon, а в HTML - theme-blue. Сопоставьте их так чтобы они совпадали. Жду исправленный вариант.

      Удалить
  8. https://forfem74.blogspot.com/2025/03/4_92.html

    Спасибо за помощь. Исправила что могла.

    ОтветитьУдалить
  9. прошлая практика №3 https://ovchinnikova2004.blogspot.com/2025/03/3.html

    ОтветитьУдалить
  10. Прошлое задание: https://linislamova.blogspot.com/2025/03/3.html
    Это задание: https://linislamova.blogspot.com/2025/03/4.html

    ОтветитьУдалить
    Ответы
    1. Оценки: "отлично", "хорошо" - в текущее задание не добавлена ссылка.

      Удалить
  11. Ответы
    1. Оценка "хорошо", не выполнен пункт задания с добавлением ссылки.

      Удалить
  12. Доделала задание: https://anuta301sinkova.blogspot.com/2025/03/3-4-tiles-css-gl.html

    ОтветитьУдалить
  13. Задание 2: https://kovalvlad369.blogspot.com/2025/03/menu-body-background-color-transparent.html
    Задание3:
    https://kovalvlad369.blogspot.com/2025/03/css-grid-layout-example_15.html

    ОтветитьУдалить
  14. Оценка "хорошо" - два грида с фоновым цветом не работают из-за несовпадения их имен в css и html.

    ОтветитьУдалить

Популярные сообщения