Верстка и веб-дизайн. 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) В любой из гридов с фото встройте в текст описания ссылку произвольного цвета (кроме синего) на произвольный сайт.

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


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://poromovasofa.blogspot.com/2023/03/tiles-css-gl.html

    ОтветитьУдалить
  2. https://dontstopthemusicslpw.blogspot.com/2023/03/blog-post.html

    ОтветитьУдалить
  3. Ответы
    1. Оценка "хорошо". Не работают цвета в двух блоках: в css и html их содержимое не совпадает.

      Удалить
  4. https://annajour1.blogspot.com/2023/03/blog-post_23.html

    ОтветитьУдалить
  5. https://dashulyaivanova.blogspot.com/2023/03/blog-post_23.html

    ОтветитьУдалить
  6. https://panasyukblog.blogspot.com/2023/03/htmlcss-grids-panasyuk.html

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

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