آموزش ساخت منو با CSS از صفر؛ طراحی منوی سایت با ابزار آنلاین
در این آموزش از مجموعه آموزشهای وبسایت آموزشی MHADAD.IR، ساخت منوی سایت با HTML و CSS را از پایه یاد میگیرید. اگر تازه وارد دنیای طراحی وب شدهاید، قدمبهقدم با ساختار HTML، طراحی با CSS، رنگها، Hover، گرادینت و طراحی واکنشگرا آشنا میشوید.
بعد از یادگیری هر بخش، میتوانید همان مفهوم را در ابزار آنلاین همین صفحه امتحان کنید و در پایان کد HTML و CSS منوی خودتان را دریافت کنید.
منوی سایت چیست؟
وقتی وارد یک وبسایت میشوید، معمولاً در بالای صفحه چند لینک مانند «خانه»، «آموزشها»، «ابزارها» و «درباره ما» مشاهده میکنید. این بخش همان منوی سایت است.
منو به بازدیدکننده کمک میکند صفحات مختلف سایت را راحتتر پیدا کند. در یک سایت HTML و CSS، ساختار اصلی منو معمولاً با HTML ساخته میشود و ظاهر آن را با CSS طراحی میکنیم.
HTML مسئول ساختار صفحه است و CSS مسئول ظاهر، رنگ، فاصله، اندازه و بسیاری از جزئیات ظاهری آن است.
ساختار منو با HTML
قبل از اینکه سراغ CSS برویم، باید ساختار منو را با HTML بسازیم. سادهترین منو میتواند چند لینک پشت سر هم باشد.
<nav class="menu">
<a href="#">خانه</a>
<a href="#">آموزشها</a>
<a href="#">ابزارها</a>
<a href="#">درباره ما</a>
</nav>
این کد چه کاری انجام میدهد؟
محدوده مربوط به منوی سایت را مشخص میکند.
برای ساخت لینک استفاده میشود.
آدرس صفحهای را مشخص میکند که لینک باید به آن منتقل شود.
به ما اجازه میدهد همین منو را با CSS هدف قرار دهیم.
طراحی منو با CSS
حالا HTML ما آماده است. اما اگر همین کد را اجرا کنید، منو ظاهر سادهای خواهد داشت. اینجا CSS وارد عمل میشود.
برای اینکه گزینههای منو کنار یکدیگر قرار بگیرند،
میتوانیم از ویژگی
display: flex
استفاده کنیم.
.menu {
display: flex;
gap: 10px;
}
.menu a {
padding: 10px 18px;
text-decoration: none;
}
چند ویژگی مهم CSS
display: flex
گزینههای منو را در یک ردیف قرار میدهد.
gap: 10px
بین گزینههای منو فاصله ایجاد میکند.
padding
فضای داخلی اطراف نوشته را افزایش میدهد.
text-decoration: none
خط زیر لینک را حذف میکند.
رنگ و ظاهر منوی سایت
حالا که ساختار منو را داریم، میتوانیم رنگ پسزمینه، رنگ نوشته و گوشههای منو را تغییر دهیم.
.menu a {
background: #6d5dfc;
color: #ffffff;
border-radius: 10px;
padding: 10px 18px;
}
ویژگی
border-radius
باعث گرد شدن گوشههای منو میشود.
border-radius
را تغییر دهید و تفاوت ظاهر منو را ببینید.
Hover در CSS چیست؟
وقتی نشانگر ماوس را روی یک گزینه منو قرار میدهیم، میتوانیم ظاهر آن گزینه را تغییر دهیم. به این حالت Hover گفته میشود.
.menu a:hover {
opacity: 0.8;
}
در این مثال وقتی کاربر ماوس را روی لینک قرار دهد، شفافیت آن کمی تغییر میکند.
میتوانیم Hover را بسیار جذابتر کنیم؛ مثلاً رنگ، سایه، اندازه یا حتی پسزمینه را تغییر دهیم.
ساخت منوی گرادینتی با CSS
گرادینت یکی از روشهای زیبا برای ایجاد پسزمینه رنگی در CSS است. به جای استفاده از یک رنگ ساده، میتوانیم دو یا چند رنگ را با یکدیگر ترکیب کنیم.
.menu a {
background:
linear-gradient(
90deg,
#6d5dfc,
#20c9b8
);
}
linear-gradient چیست؟
linear-gradient
یک گرادینت خطی ایجاد میکند.
عدد
90deg
جهت حرکت رنگها را مشخص میکند و دو رنگ بعد از آن،
رنگهای گرادینت هستند.
چند نمونه منوی آماده CSS
اگر نمیخواهید تنظیمات را از ابتدا انجام دهید، یکی از نمونههای زیر را انتخاب کنید. بعد از انتخاب، میتوانید تمام تنظیمات آن را تغییر دهید.
طراحی منوی واکنشگرا برای موبایل
امروزه بسیاری از کاربران سایتها را با موبایل مشاهده میکنند. بنابراین منویی که فقط روی صفحهنمایش بزرگ ظاهر مناسبی داشته باشد، کافی نیست.
طراحی واکنشگرا یا Responsive Web Design یعنی ظاهر صفحه بتواند خودش را با اندازه صفحهنمایش دستگاههای مختلف هماهنگ کند.
@media (max-width: 600px) {
.menu {
flex-direction: column;
}
.menu a {
width: 100%;
text-align: center;
}
}
در این مثال وقتی عرض صفحه کمتر از ۶۰۰ پیکسل شود، گزینههای منو به صورت عمودی زیر یکدیگر قرار میگیرند.
در پروژههای حرفهای میتوان منوی موبایل را با دکمه باز و بسته شدن، انیمیشن و JavaScript کاملتر کرد؛ اما برای شروع، همین ساختار Responsive یکی از پایههای مهم CSS است.
حالا خودتان یک منوی CSS بسازید
برای اینکه مطالب این آموزش بهتر در ذهنتان بماند، این تمرین را انجام دهید:
- یک منو با چهار گزینه «خانه»، «آموزش»، «ابزارها» و «درباره ما» بسازید.
- برای منو دو رنگ انتخاب کنید.
-
با
linear-gradientیک پسزمینه گرادینتی ایجاد کنید. -
گوشههای منو را با
border-radiusگرد کنید. - برای حالت Hover یک تغییر رنگ ایجاد کنید.
- در نهایت منوی خود را برای موبایل واکنشگرا کنید.
اگر میخواهید این تمرین را سریعتر انجام دهید، میتوانید ابتدا تنظیمات را در ابزار آنلاین همین صفحه انجام دهید و سپس کد تولیدشده را بررسی کنید.
سوالات متداول درباره ساخت منو با CSS
برای ساخت منوی سایت باید HTML بلد باشم؟
بهتر است ابتدا با HTML در حد مقدماتی آشنا باشید، زیرا HTML ساختار اصلی منو را ایجاد میکند و CSS ظاهر آن را طراحی میکند.
تفاوت HTML و CSS چیست؟
HTML ساختار و عناصر صفحه را مشخص میکند، در حالی که CSS برای طراحی ظاهری مانند رنگ، اندازه، فاصله، چیدمان و ظاهر عناصر استفاده میشود.
Hover در CSS چه کاربردی دارد؟
Hover زمانی استفاده میشود که بخواهیم هنگام قرار گرفتن نشانگر ماوس روی یک عنصر، ظاهر آن تغییر کند.
Gradient در CSS چیست؟
Gradient یا گرادینت روشی برای ترکیب تدریجی
چند رنگ است. یکی از روشهای رایج ساخت آن
در CSS استفاده از
linear-gradient()
است.
آیا کد تولیدشده توسط ابزار را میتوان در سایت استفاده کرد؟
بله. ابزار این صفحه کد HTML و CSS استاندارد تولید میکند. میتوانید کد را کپی کرده و در پروژه HTML یا بخش مناسب سایت خود قرار دهید.
آیا این منو روی موبایل هم قابل استفاده است؟
بله، اما برای طراحی حرفهای باید CSS واکنشگرا یا Responsive نیز برای اندازههای مختلف صفحه در نظر گرفته شود.
جمعبندی آموزش ساخت منو با CSS
در این آموزش یاد گرفتید چگونه ساختار یک منوی سایت را با HTML ایجاد کنید و سپس با CSS ظاهر آن را طراحی کنید. با Flexbox، فاصلهها، رنگ، گوشههای گرد، Hover، گرادینت و طراحی واکنشگرا نیز آشنا شدید.
مهمترین نکته این است که فقط کدها را کپی نکنید؛ مقادیر مختلف را تغییر دهید و نتیجه را ببینید. تمرین کردن با تغییر رنگ، فاصله، اندازه و Hover باعث میشود مفاهیم CSS را بهتر یاد بگیرید.
این آموزش بخشی از محتوای آموزشی وبسایت آموزشی MHADAD.IR است که با هدف ارائه آموزشهای ساده و کاربردی در زمینه طراحی وب و ابزارهای آنلاین تهیه شده است.
