Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания и решения примеров htmlacademy.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
13.49 Mб
Скачать

Сетка посложнее, шаг 2 [21/32]

Обратите внимание на способ именования классов: колонки имеют класс layout-column.

Префикс layout обозначает «сетка» или «раскладка». Таким образом, мы даём понять, что классы с этим префиксом предназначены для создания сетки. Обычно для таких классов задают только флоаты, размеры и внешние отступы.

Использование значимых префиксов для именования классов — хороший приём. Используйте его в своей вёрстке.

На втором шаге мы создадим колонки содержания.

block-21-32.html

<!DOCTYPE html>

<html lang="ru">

<head>

<title>Сетка посложнее, шаг 2</title>

<meta charset="utf-8">

<link href="//fonts.googleapis.com/css?family=PT+Sans:400&subset=cyrillic" rel="stylesheet" type="text/css">

<style>

body {

margin: 0;

padding: 0;

font-family: "PT Sans", sans-serif;

}

.wrapper {

width: 430px;

margin: 0 auto;

box-shadow: 0 0 2px #cccccc;

}

.clearfix::after {

content: "";

clear: both;

display: table;

}

.header {

margin-bottom: 10px;

color: white;

background: #34495e;

}

.header .layout-column {

min-height: 50px;

background: rgba(192, 57, 43, 0.9);

border-bottom: 2px dashed #95a5a6;

}

.header .layout-column-1 {

float: left;

width: 280px;

}

.header .layout-column-2 {

float: right;

width: 130px;

}

.features {

margin-bottom: 10px;

}

.features .layout-column {

float: left;

width: 130px;

min-height: 100px;

background: rgba(236, 240, 241, 0.9);

border-bottom: 2px dashed #95a5a6;

}

.footer {

min-height: 50px;

color: white;

background: #34495e;

}

</style>

</head>

<body>

<div class="wrapper">

<div class="header clearfix">

<div class="layout-column layout-column-1">

Лого

</div>

<div class="layout-column layout-column-2">

Меню

</div>

</div>

<div class="features clearfix">

<div class="layout-column">

Колонка 1

</div>

<div class="layout-column">

Колонка 2

</div>

<div class="layout-column">

Колонка 3

</div>

</div>

<div class="footer">

Футер

</div>

</div>

</body>

</html>

Сетка посложнее, шаг 3 [22/32]

Теперь нам нужно задать отступы между колонками содержания. Сделать это просто — добавим им маргин справа.

Но есть небольшая проблема. По макету последняя колонка должна прижиматься к правому краю контейнера. Поэтому нам нужно обнулить маргин справа у последней колонки в содержании, иначе она не будет влезать в контейнер и перенесётся на следующую строку.

Чтобы выбрать последнюю колонку, вы можете использовать псевдокласс :last-child, с которым вы уже знакомились в курсе про селекторы.

block-22-32.html

<!DOCTYPE html>

<html lang="ru">

<head>

<title>Сетка посложнее, шаг 3</title>

<meta charset="utf-8">

<link href="//fonts.googleapis.com/css?family=PT+Sans:400&subset=cyrillic" rel="stylesheet" type="text/css">

<style>

body {

margin: 0;

padding: 0;

font-family: "PT Sans", sans-serif;

}

.wrapper {

width: 430px;

margin: 0 auto;

box-shadow: 0 0 2px #cccccc;

}

.clearfix::after {

display: table;

content: "";

clear: both;

}

.header {

margin-bottom: 10px;

color: white;

background: #34495e;

}

.header .layout-column {

min-height: 50px;

background: rgba(192, 57, 43, 0.9);

border-bottom: 2px dashed #95a5a6;

}

.header .layout-column-1 {

float: left;

width: 280px;

}

.header .layout-column-2 {

float: right;

width: 130px;

}

.features {

margin-bottom: 10px;

}

.features .layout-column {

float: left;

width: 130px;

min-height: 100px;

background: rgba(236, 240, 241, 0.9);

border-bottom: 2px dashed #95a5a6;

margin-right: 20px;

}

.features .layout-column:last-child {

margin-right: 0;

}

.footer {

min-height: 50px;

color: white;

background: #34495e;

}

</style>

</head>

<body>

<div class="wrapper">

<div class="header clearfix">

<div class="layout-column layout-column-1">

Лого

</div>

<div class="layout-column layout-column-2">

Меню

</div>

</div>

<div class="features clearfix">

<div class="layout-column">

Колонка 1

</div>

<div class="layout-column">

Колонка 2

</div>

<div class="layout-column">

Колонка 3

</div>

</div>

<div class="footer">

Футер

</div>

</div>

</body>

</html>