Загрузка данных
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Интернет-магазин</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<!-- Шапка -->
<header>
<h2>Магазин гаджетов</h2>
<input type="text" placeholder="Поиск...">
</header>
<!-- Каталог -->
<main>
<h1>Каталог</h1>
<div class="grid">
<!-- Карточка 1 -->
<div class="card">
<img src="https://images.unsplash.com/photo-1510557880182-3d4d3cba35a5?auto=format&fit=crop&w=300&q=80" alt="Товар">
<span class="brand">Apple</span>
<h3>iPhone 14 Pro</h3>
<ul>
<li>Экран: 6.1"</li>
<li>Память: 256 ГБ</li>
<li>Камера: 48 МП</li>
</ul>
<div class="price">99 990 ₽</div>
<button>В корзину</button>
</div>
<!-- Карточка 2 -->
<div class="card">
<img src="https://images.unsplash.com/photo-1610945265064-0e34e5519bbf?auto=format&fit=crop&w=300&q=80" alt="Товар">
<span class="brand">Samsung</span>
<h3>Galaxy S23</h3>
<ul>
<li>Экран: 6.1"</li>
<li>Память: 128 ГБ</li>
<li>Камера: 50 МП</li>
</ul>
<div class="price">74 990 ₽</div>
<button>В корзину</button>
</div>
<!-- Карточка 3 -->
<div class="card">
<img src="https://images.unsplash.com/photo-1546435770-a3e426bf472b?auto=format&fit=crop&w=300&q=80" alt="Товар">
<span class="brand">Sony</span>
<h3>Наушники WH-1000XM5</h3>
<ul>
<li>Шумоподавление</li>
<li>До 30 часов</li>
<li>Беспроводные</li>
</ul>
<div class="price">27 990 ₽</div>
<button>В корзину</button>
</div>
<!-- Карточка 4 -->
<div class="card">
<img src="https://images.unsplash.com/photo-1508685096489-7aacd43bd3b1?auto=format&fit=crop&w=300&q=80" alt="Товар">
<span class="brand">Apple</span>
<h3>Apple Watch SE</h3>
<ul>
<li>Корпус 40 мм</li>
<li>Пульсометр</li>
<li>Водозащита</li>
</ul>
<div class="price">24 990 ₽</div>
<button>В корзину</button>
</div>
<!-- Карточка 5 -->
<div class="card">
<img src="https://images.unsplash.com/photo-1527977966376-1c8408f9f108?auto=format&fit=crop&w=300&q=80" alt="Товар">
<span class="brand">DJI</span>
<h3>Квадрокоптер Mini 2 SE</h3>
<ul>
<li>Камера 2.7K</li>
<li>Полет 31 мин</li>
<li>Вес 246 г</li>
</ul>
<div class="price">31 500 ₽</div>
<button>В корзину</button>
</div>
<!-- Карточка 6 -->
<div class="card">
<img src="https://images.unsplash.com/photo-1608043152269-423dbba4e7e1?auto=format&fit=crop&w=300&q=80" alt="Товар">
<span class="brand">JBL</span>
<h3>Колонка Flip 6</h3>
<ul>
<li>Мощность 30 Вт</li>
<li>Защита IP67</li>
<li>Работа 12 часов</li>
</ul>
<div class="price">9 990 ₽</div>
<button>В корзину</button>
</div>
</div>
</main>
<!-- Футер -->
<footer>
<p>Интернет-магазин гаджетов</p>
</footer>
</body>
</html>
body {
font-family: sans-serif;
margin: 0;
background-color: #ffffff;
color: #222;
}
/* Шапка */
.header {
border-bottom: 1px solid #ddd;
padding: 15px 20px;
display: flex;
justify-content: space-between;
align-items: center;
}
.logo {
font-weight: bold;
font-size: 18px;
}
.search {
padding: 5px 10px;
border: 1px solid #ccc;
font-size: 14px;
}
/* Контейнер */
.container {
max-width: 1000px;
margin: 20px auto;
padding: 0 20px;
}
h1 {
font-size: 22px;
margin-bottom: 20px;
}
/* Сетка (Grid) */
.grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 20px;
}
/* Карточка (Flexbox) */
.card {
border: 1px solid #ddd;
padding: 15px;
display: flex;
flex-direction: column;
background: #fff;
transition: transform 0.2s, box-shadow 0.2s;
}
/* Интерактивность при наведении */
.card:hover {
transform: translateY(-3px);
box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}
.card img {
width: 100%;
height: 150px;
object-fit: contain;
margin-bottom: 10px;
}
.brand {
font-size: 11px;
color: #777;
text-transform: uppercase;
margin-bottom: 4px;
}
.card h3 {
font-size: 15px;
margin: 0 0 8px 0;
}
.card ul {
font-size: 13px;
color: #555;
padding-left: 15px;
margin: 0 0 15px 0;
}
.price {
font-size: 16px;
font-weight: bold;
margin-bottom: 15px;
}
/* Кнопка прижата к низу через margin-top: auto */
.card button {
margin-top: auto;
background-color: #222;
color: #fff;
border: none;
padding: 8px;
cursor: pointer;
font-size: 14px;
}
.card button:hover {
background-color: #444;
}
.card button:active {
background-color: #000;
}
/* Футер */
.footer {
border-top: 1px solid #ddd;
text-align: center;
padding: 15px;
margin-top: 40px;
font-size: 13px;
color: #777;
}