سی اس اس (CSS)
CSS (شیوهنامه آبشاری) زبانی برای استایلدهی به اسناد HTML است. CSS نحوه نمایش عناصر HTML را تعریف میکند.
📚 منابع برای مشاهده لیست کامل:
- MDN CSS Reference:
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference- CSS-Tricks Almanac:
https://css-tricks.com/almanac/
مفاهیم پایه
ساختار کلی
selector {
property: value;
}انواع سلکتورها
- سلکتور عنصر -
p { ... } - سلکتور کلاس -
.classname { ... } - سلکتور ID -
#idname { ... } - سلکتور جهانی -
* { ... } - سلکتور ترکیبی -
div.classname { ... }
مدل جعبهای (Box Model)
width- عرضheight- ارتفاعpadding- فضای داخلیborder- حاشیهmargin- فضای خارجی
ویژگیهای متداول
متن و فونت
font-family- نوع فونتfont-size- اندازه فونتcolor- رنگ متنtext-align- تراز متنline-height- ارتفاع خط
مثال
text-align: justify: - متن را به گونهای تنظیم میکند که هر سطر (به جز احتمالاً آخرین سطر) از لبه چپ تا راست بلوک کشیده شود.
رنگ و پسزمینه
background-color- رنگ پسزمینهbackground-image- تصویر پسزمینهbackground-size- اندازه پسزمینهbackground-position- موقعیت پسزمینه
موقعیتیابی
position- نوع موقعیتیابی (static, relative, absolute, fixed, sticky)top,right,bottom,left- موقعیتz-index- ترتیب لایهها
vertical-align - کنترل تراز عمودی عناصر
- مقادیر پرکاربرد :
baseline(پیشفرض): تراز با خط پایه متنtop: تراز با بالاترین نقطه عنصر مجاورmiddle: تراز با وسط عنصر والدbottom: تراز با پایینترین نقطه عنصر مجاورtext-top/text-bottom: تراز با بالا/پایین متن والد- مقادیر عددی: مثلاً
vertical-align: 10pxیا-5px(جابهجایی نسبی)
لایهبندی مدرن
Flexbox
.container {
display: flex;
justify-content: center; /* تراز افقی */
align-items: center; /* تراز عمودی */
flex-direction: row; /* جهت */
}CSS Grid
.container {
display: grid;
grid-template-columns: 1fr 2fr 1fr; /* ستونها */
grid-template-rows: 100px auto; /* سطرها */
gap: 10px; /* فاصله */
}طراحی واکنشگرا
Media Queries
@media (max-width: 768px) {
body {
background-color: lightblue;
}
}واحدهای اندازهگیری
px- پیکسل%- درصدem- نسبت به فونت والدrem- نسبت به فونت ریشهvw,vh- درصد از عرض/ارتفاع ویوپورت
مفاهیم پیشرفته
متغیرها (CSS Variables)
:root {
--main-color: #3498db;
}
body {
background-color: var(--main-color);
}انیمیشنها
@keyframes example {
from {background-color: red;}
to {background-color: yellow;}
}
div {
animation: example 5s infinite;
}ترنزیشنها
div {
transition: all 0.3s ease;
}
div:hover {
transform: scale(1.1);
}سایهها
text-shadow- سایه متنbox-shadow- سایه جعبه
بهترین روشها
- استفاده از کلاسهای معنادار
- سازماندهی کد با روشهایی مثل BEM
- استفاده از پیشپردازندهها (Sass, Less)
- بهینهسازی برای عملکرد
- سازگاری با مرورگرهای مختلف
منابع یادگیری
- MDN Web Docs
- CSS-Tricks
- W3Schools
- freeCodeCamp
📚 منابع برای مشاهده لیست کامل:
- MDN CSS Reference:
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference- CSS-Tricks Almanac:
https://css-tricks.com/almanac/
