Learning to design a store website with HTML and CSS
طراحی یک سایت فروشگاهی با استفاده از HTML و CSS یکی از پایهایترین و در عین حال کاربردیترین پروژهها برای یادگیری توسعه وب است. این پروژه به شما کمک میکند تا مفاهیم اساسی مانند ساختار صفحه، چیدمان عناصر و طراحی واکنشگرا را به خوبی درک کنید. در این آموزش، مراحل اصلی طراحی یک سایت فروشگاهی ساده را بررسی خواهیم کرد.
هر سایت فروشگاهی معمولاً از بخشهای زیر تشکیل شده است:
برای شروع، ابتدا ساختار پایه HTML را ایجاد میکنیم:
<!DOCTYPE html>
<html lang="fa" dir="rtl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>فروشگاه اینترنتی</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<header>
<!-- محتوای هدر -->
</header>
<main>
<!-- محتوای اصلی -->
</main>
<footer>
<!-- محتوای فوتر -->
</footer>
</body>
</html>
هدر سایت اولین بخشی است که کاربران میبینند و باید شامل عناصر مهمی مانند لوگو، منوی اصلی و سبد خرید باشد. برای طراحی هدر میتوانیم از CSS Flexbox استفاده کنیم:
header {
background-color: #f8f9fa;
padding: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.logo {
font-size: 1.5rem;
font-weight: bold;
}
nav ul {
display: flex;
list-style: none;
gap: 1rem;
}
.cart-btn {
background-color: #007bff;
color: white;
border: none;
padding: 0.5rem 1rem;
border-radius: 5px;
}
بخش محصولات قلب تپنده سایت فروشگاهی است. برای نمایش محصولات میتوانیم از CSS Grid استفاده کنیم که امکان چیدمان واکنشگرا را فراهم میکند:
.products {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 1.5rem;
padding: 2rem;
}
.product-card {
border: 1px solid #ddd;
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s ease;
}
.product-card:hover {
transform: translateY(-5px);
}
.product-image {
width: 100%;
height: 200px;
object-fit: cover;
}
.product-info {
padding: 1rem;
}
.product-price {
font-weight: bold;
color: #28a745;
}
با ترکیب این تکنیکها میتوانید یک سایت فروشگاهی ساده اما کاربردی ایجاد کنید. یادگیری این مفاهیم پایه به شما کمک میکند تا در آینده بتوانید پروژههای پیچیدهتری را نیز توسعه دهید.
نظر خود را بیان کنید...