Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

Web-дизайн. Лабораторное занятие №6. Tiles дизайн на CSS GL

Вам нужно создать страницу в tiles-формате, выполненную по правилам CSS GL
Для этого потребуется конфигурация стилей в файле .css и подключение этого файла к коду страницы в HTML


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) Теперь упаковка грида:

/* Flexbox fallback */
.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) Ширина и отображение:

 /* resets pre grid */
     .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: 'Libre Baskerville', serif;
     font-size: 1.5rem;
     font-weight: 700;
     line-height: 1.2;
     margin-bottom: 1rem;
}

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

7) Темы цветных блоков - указаны три раза - латиницей, кодом фона и кодом цвета шрифта.
Везде меняете на свои:

.theme-blue {
     background: #0000ff;
     color: #ffffff;
}

.theme-navy {
     background: #000080;
     color: #ffffff;
}

.theme-teal {
     background: #008080;
     color: #ffffff;
}

8) Положение иллюстраций:

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

9) Сами иллюстрации внутри грида. В них вы используете свои картинки (можно загрузить на google sites):


.img-background--sea {
     background-image: linear-gradient( rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('https://sites.google.com/site/konoplevmedia/sea.png');
}

.img-background--wave {
     background-image: linear-gradient( rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('https://sites.google.com/site/konoplevmedia/wave.png');
}

.img-background--horizon {
     background: linear-gradient( rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('https://sites.google.com/site/konoplevmedia/horizon.png');
     background-size: cover;
     background-repeat: no-repeat;
     color: #fff;
}


10) Все вышеуказанные параметры вы сохраняете как .css

11) Встраиваете .css в начало кода в новом посте в blogger

II) После этого переходите непосредственно к HTML:

12) Предупреждение для браузера:

<div class="support-warning">
    This demo requires CSS Grid. The current browser you're using doesn't support it and is using a Flexbox fallback. Find a <a href="https://igalia.github.io/css-grid-layout/enable.html">grid-enabled browser</a>.
</div>

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

<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>

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

<div class="img-background img-background--sea align-center l-grid__item l-grid l-span-column-2">
          <div class="content">
          <h2 class="heading">
              Sea
          </h2>
 <p class="description">your description here</p>
         
          </div>
     </div>

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

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

<div class="img-background img-background--wave align-center l-grid l-grid__item l-span-column-2">
           <div class="content">
          <h2 class="heading">
               Wave
          </h2>
 <p class="description">your description here</p>
          
       
          </div>
     </div>

16) Третий блок:
     
       <div class="img-background img-background--horizon align-center l-grid l-grid__item l-span-column-2">
           <div class="content">
          <h2 class="heading">
               Horizon
          </h2>
           <p class="description">your description here</p>
          
          
          </div>
     </div>

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

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

18) И еще раз с другим цветом:
     
     <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>

19) Закрываете все параметры:

</div>

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

21) Оставляете ссылку на выполненное задание в комментарии к данному посту до 18:00 четверга, 1 ноября.

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://strokach.blogspot.com/2018/10/this-demo-requires-css-grid.html?m=1

    ОтветитьУдалить
  2. https://babazoya.blogspot.com/2018/10/this-demo-requires-css-grid_31.html

    ОтветитьУдалить
  3. Ответы
    1. Оценка "отлично"

      P.S. И убейте этот слайдер вверху страницы - он мешает просматривать ее содержимое.

      Удалить
  4. Бычков Михаил, ФЖ-402
    https://michail-bychkov97.blogspot.com/2018/10/this-demo-requires-css-grid.html

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

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