آموزش CSS - قسمت 1
صادق جعفری
صادق جعفری

از کودکی به کامپیوتر و دنیای دیجیتال علاقه داشتم، به همین دلیل ترک تحصیل کردم و تمام تلاش خودم را صرفا برای یادگیری کامپیوتر، طراحی، برنامه نویسی و ... به کار گرفتم. در کنار مشاغل مختلفی که مجبور به انجامشان بودم برنامه نویسی را یاد گرفتم و از سال 1390 وارد بازار کار شدم و همیشه در تلاش هستم تا چالش های روبرو را با موفقیت پشت سر بگذارم.

شبکه های اجتماعی من

سلام دوستان! من صادق جعفری هستم و امروز می‌خواهیم با هم به دنیای جذاب CSS سفر کنیم. CSS که مخفف "Cascading Style Sheets" هست، یک ابزار فوق‌العاده برای زیباتر کردن و بهبود ظاهر صفحات وب است. با کمک CSS می‌تونیم استایل‌های مختلفی مثل رنگ‌ها، پس‌زمینه‌ها و حاشیه‌ها رو به المان‌های مختلف وب‌سایت اضافه کنیم و از یک صفحه ساده به یک صفحه حرفه‌ای برسیم.

در این جلسه قراره با مفهوم CSS، تاریخچه کوتاه آن و ساختار اصلی آن آشنا بشیم. همچنین به شما نشون می‌دم چطور CSS رو به صفحات وب‌تون اضافه کنید، سلکتورهای مختلف رو بشناسید و با رنگ‌ها، پس‌زمینه‌ها، حاشیه‌ها (border) و فضاهای خارجی (margin) کار کنید. آماده‌اید؟ پس بزن بریم تا با هم CSS رو یاد بگیریم و صفحات وب‌مون رو زیباتر کنیم!

 

CSS چیست؟

امروز می‌خواهیم با یه مفهوم بسیار مهم و جذاب در دنیای طراحی وب آشنا بشیم: CSS. شاید اسم CSS به گوشتون خورده باشه و حالا می‌خواهید بدونید که این مخفف چه چیزیه و به چه دردی می‌خوره. خب، بیایید قدم به قدم جلو بریم و ببینیم CSS چیه و چه کمکی می‌تونه به ما بکنه.

مفهوم CSS

CSS یا Cascading Style Sheets یک زبان طراحی است که به شما این امکان رو می‌ده تا استایل و ظاهر صفحات وب‌تون رو به راحتی تغییر بدید. در واقع، CSS به شما کمک می‌کنه تا ظاهر عناصر HTML رو تغییر بدید و اون‌ها رو زیباتر کنید. مثلاً می‌تونید رنگ‌ها، اندازه‌ها، فونت‌ها و فاصله‌ها رو تغییر بدید و به هر عنصری که بخواید، یک استایل خاص اختصاص بدید.

مزایای استفاده از CSS

با استفاده از CSS می‌تونید طراحی صفحات وب رو از کدهای HTML جدا کنید. این کار باعث می‌شه که کدهای HTML تمیزتر و مرتب‌تر بشن و بتونید استایل‌ها رو به راحتی مدیریت و تغییر بدید. همچنین، CSS این امکان رو فراهم می‌کنه که طراحی وب‌سایت رو به صورت یکپارچه و هماهنگ انجام بدید و از تغییرات یکسان در تمامی صفحات استفاده کنید.

 

تاریخچه CSS

وقتی به تاریخچه دنیای وب نگاه می‌کنیم، می‌بینیم که هر تکنولوژی و ابزاری که امروز از آن استفاده می‌کنیم، روزی به دلیل یک نیاز خاص به وجود آمده است. CSS هم از این قاعده مستثنی نیست. در ابتدای ظهور وب، HTML تنها زبانی بود که برای طراحی و ساخت صفحات وب استفاده می‌شد. اما مشکلی که وجود داشت، این بود که HTML به خودی خود توانایی ایجاد استایل و ظاهر دلخواه را نداشت و تمام عناصر در ساده‌ترین حالت ممکن نمایش داده می‌شدند. همه صفحات شبیه هم بودند و زیبایی و جذابیت خاصی نداشتند. اینجا بود که CSS به عنوان یک راه حل فوق‌العاده به میدان آمد.

 

پیدایش CSS

CSS برای اولین بار در اواسط دهه 90 میلادی به وجود آمد. در سال 1994، هاوکون ویم لی (Håkon Wium Lie)، یکی از اعضای تیم W3C، ایده استفاده از یک زبان برای استایل دادن به صفحات وب را مطرح کرد. این ایده در پاسخ به نیاز روزافزون به جداسازی استایل از محتوا و ایجاد صفحاتی با ظاهری جذاب و کاربرپسند بود.

در سال 1996، اولین نسخه رسمی CSS، با نام CSS1 منتشر شد. این نسخه ابتدایی شامل امکانات اولیه‌ای بود که به طراحان اجازه می‌داد تا کنترل بهتری روی ظاهر صفحات وب داشته باشند. با این حال، CSS1 تنها شروعی بود برای یک راه طولانی و پر از پیشرفت‌های شگرف.

 

پیشرفت‌های بعدی و CSS2

با گذشت زمان و افزایش تقاضا برای طراحی‌های پیچیده‌تر، نیاز به توسعه و به‌روزرسانی CSS بیش از پیش احساس شد. در سال 1998، نسخه جدیدتری از CSS با نام CSS2 معرفی شد. CSS2 قابلیت‌های جدیدی مثل پشتیبانی از طراحی واکنش‌گرا، استفاده از فونت‌های مختلف و کنترل دقیق‌تری روی لایه‌بندی صفحات را ارائه می‌داد.

 

CSS3 و تحول در طراحی وب

اما نقطه عطف واقعی در تاریخچه CSS زمانی بود که CSS3 به عرصه آمد. در سال 1999، توسعه CSS3 آغاز شد و با گذشت چندین سال و اضافه شدن قابلیت‌های جدید، CSS3 توانست انقلابی در دنیای طراحی وب ایجاد کند. یکی از مهم‌ترین ویژگی‌های CSS3، پشتیبانی از ماژول‌ها بود که امکان اضافه کردن ویژگی‌های جدید به صورت تدریجی و مستقل از هم را فراهم می‌کرد.

CSS3 امکانات جدیدی مثل انیمیشن‌ها، گرادیانت‌ها، سایه‌ها و ترنزیشن‌ها را به طراحی وب آورد. این ویژگی‌ها باعث شدند تا طراحی‌های پیچیده و جذاب‌تری ایجاد شود و وب‌سایت‌ها از حالت خشک و بی‌روح خارج شوند. به کمک CSS3، طراحان وب می‌توانستند به راحتی استایل‌های خیره‌کننده و پیچیده‌ای را ایجاد کنند که پیش از آن امکان‌پذیر نبود.

 

روند توسعه و آینده CSS

امروزه CSS همچنان در حال توسعه و بهبود است. نسخه‌های جدیدتری از CSS با نام CSS4 و ماژول‌های پیشرفته‌تری در دست توسعه هستند که امکانات بیشتری را برای طراحان فراهم می‌کنند. هدف از توسعه CSS این است که هر روزه امکانات بیشتری برای طراحی‌های زیبا و کارآمد فراهم شود و تجربه کاربری بهتری ایجاد شود.

CSS به عنوان یک زبان استایل‌دهی همچنان در قلب طراحی وب قرار دارد و هر روزه با بهبود و تکامل خود، امکانات بیشتری را برای طراحان فراهم می‌کند. آینده CSS به طور قطع پر از امکانات جدید و جذاب خواهد بود که باعث می‌شود طراحی وب هر روزه پیشرفته‌تر و زیباتر شود.

 

ساختار CSS

CSS از یک الگوی ساده و قابل فهم پیروی می‌کنه. این الگو به شما کمک می‌کنه تا به راحتی استایل‌های مورد نظرتون رو به عناصر HTML اعمال کنید.ساختار پایه‌ای CSS شامل سه بخش اصلی هست: سلکتور (Selector)، خصوصیات (Properties) و مقادیر (Values). هر خط از کد CSS به یک عنصر HTML اختصاص داده می‌شه و استایل خاصی رو به اون عنصر اعمال می‌کنه.

1. سلکتور (Selector)

سلکتور بخشی از کد CSS هست که مشخص می‌کنه استایل باید روی کدوم عنصر HTML اعمال بشه. سلکتور می‌تونه یک تگ HTML، یک کلاس یا یک ID باشه. به عنوان مثال، اگر بخوایم به همه پاراگراف‌ها (تگ <p>) استایل بدیم، سلکتور ما تگ p خواهد بود.

مثال: تغییر رنگ متن همه پاراگراف‌ها به آبی

p {
    color: blue;
}

در اینجا p یک سلکتور هست که به تگ پاراگراف اشاره می‌کنه.

 

2. خصوصیات (Properties)

خصوصیات، ویژگی‌هایی هستن که می‌خواهیم به عنصر HTML بدیم. این ویژگی‌ها می‌تونن شامل رنگ، اندازه فونت، فاصله‌ها و غیره باشن. خصوصیات به صورت یک جفت کلید و مقدار تعریف می‌شن و همیشه بعد از سلکتور میان.

مثال: تغییر رنگ و اندازه متن پاراگراف

p {
    color: blue;       /* Blue text color */
    font-size: 20px;   /* Font size 20 pixels */
}

در این مثال، color و font-size دو خصوصیت هستن که به عنصر پاراگراف اختصاص داده شدن.

 

3. مقادیر (Values)

مقادیر، مقدارهای مربوط به خصوصیات هستن. هر خصوصیت یک مقدار می‌گیره که تعیین می‌کنه اون ویژگی باید چطوری اعمال بشه. مقادیر می‌تونن به صورت عددی، رنگی یا متنی باشن.

مثال: تنظیم رنگ پس‌زمینه و حاشیه برای یک دیو

div {
    background-color: yellow; /* Yellow background color */
    border: 2px solid black;  /* 2px border, black and no space */
}

در این مثال، background-color و border خصوصیت‌هایی هستن که به دیو اختصاص داده شدن و مقادیر اون‌ها به ترتیب yellow و 2px solid black هست.

 

ساختار کلی یک قانون CSS

هر قانون CSS شامل یک یا چند سلکتور، یک بلوک از خصوصیات و مقادیر مربوطه هست. به این صورت که بعد از سلکتور، یک جفت آکولاد {} باز می‌شه و درون اون آکولاد، خصوصیات و مقادیر نوشته می‌شه. هر خصوصیت و مقدار با یک نقطه ویرگول ; از هم جدا می‌شن.

مثال: یک قانون CSS برای تگ <h1>

h1 {
    color: red;       /* Red text color */
    text-align: center; /* The text is centered */
    font-family: Arial, sans-serif; /* Font Arial */
}

در اینجا:

  • h1 سلکتور هست که به تگ هدر اشاره می‌کنه.
  • color, text-align و font-family خصوصیت‌هایی هستن که به تگ هدر اعمال شدن.
  • red, center و Arial, sans-serif مقادیر این خصوصیات هستن.

 

سلکتورها در CSS

معرفی سلکتورها

سلکتورها در واقع اون چیزی هستن که به ما کمک می‌کنن تا بتونیم دقیقاً مشخص کنیم که چه عناصری از صفحه وب باید استایل بگیرن. اگه بخوایم یک صفحه وب رو مثل یک نقشه در نظر بگیریم، سلکتورها همون نشونه‌گذاری‌هایی هستن که به ما می‌گن کجا باید تغییرات رو اعمال کنیم. حالا بریم ببینیم انواع مختلف سلکتورها چی هستن و چطور می‌تونیم از اون‌ها استفاده کنیم.

 

سلکتور نوع (Type Selector)

سلکتور نوع یکی از ساده‌ترین و پرکاربردترین سلکتورهاست. این سلکتور بر اساس نام تگ HTML اعمال می‌شه. مثلاً اگه بخوایم همه پاراگراف‌ها یا همه تیترهای یک صفحه رو هدف بگیریم، از سلکتور نوع استفاده می‌کنیم.

مثال: تغییر رنگ متن همه پاراگراف‌ها به سبز

p {
    color: green;
}

در اینجا، p سلکتور نوع هست که به همه تگ‌های پاراگراف اشاره می‌کنه و رنگ متن اون‌ها رو سبز می‌کنه.

 

سلکتور کلاس (Class Selector)

سلکتور کلاس به شما این امکان رو می‌ده که به یک گروه از عناصر که همگی یک کلاس مشترک دارن، استایل بدید. کلاس‌ها در HTML با استفاده از ویژگی class تعریف می‌شن و در CSS با یک نقطه . و بعد از اون نام کلاس فراخوانی می‌شن.

مثال: تغییر رنگ متن همه عناصری که کلاس highlight دارن به آبی

HTML:

<p class="highlight">This is an important text.</p>
<p class="highlight">This is another important text.</p>

CSS:

.highlight {
    color: blue;
}

در اینجا، highlight. یک سلکتور کلاس هست که به همه عناصری که این کلاس رو دارن، رنگ آبی اختصاص می‌ده.

 

سلکتور آی‌دی (ID Selector)

سلکتور آی‌دی برای هدف‌گیری یک عنصر خاص استفاده می‌شه. هر عنصر در HTML می‌تونه یک آی‌دی منحصر به فرد داشته باشه و در CSS این آی‌دی‌ها با یک هش # و بعد از اون نام آی‌دی فراخوانی می‌شن.

مثال: تنظیم رنگ پس‌زمینه برای عنصری با آی‌دی header به رنگ خاکستری

HTML:

<div id="header">This is a header.</div>

CSS:

#header {
    background-color: gray;
}

در اینجا، #header یک سلکتور آی‌دی هست که به عنصر با آی‌دی header اشاره می‌کنه و پس‌زمینه اون رو خاکستری می‌کنه.

 

سلکتور ترکیبی (Combination Selector)

سلکتورهای ترکیبی به شما این امکان رو می‌دن که بر اساس ترکیبی از شرایط مختلف، عناصر رو هدف بگیرید. چند نوع سلکتور ترکیبی وجود داره که در ادامه به اون‌ها می‌پردازیم:

1. سلکتور گروهی (Group Selector)

با استفاده از این سلکتور می‌تونید چندین عنصر رو با یک استایل یکسان هدف قرار بدید. برای این کار، سلکتورها رو با کاما , از هم جدا می‌کنید.

مثال: تغییر رنگ متن همه پاراگراف‌ها و هدرها به قرمز

p, h1 {
    color: red;
}

در اینجا، هم پاراگراف‌ها و هم هدرها به رنگ قرمز درمی‌آن.

 

2. سلکتور فرزند (Child Selector)

این سلکتور به شما امکان می‌ده که فقط فرزندان مستقیم یک عنصر رو هدف بگیرید. برای این کار از کاراکتر > استفاده می‌شه.

مثال: تغییر رنگ متن همه لیست‌های مرتبی که فرزندان مستقیم یک دیو هستن به آبی

HTML:

<div>
    <ol> 
        <li>item 1</li>
    </ol>
    <ul>
        <li>item 2</li>
    </ul>
</div>

CSS:

div > ol {
    color: blue;
}

در اینجا، فقط لیست‌های مرتب که فرزندان مستقیم دیو هستن به رنگ آبی درمی‌آن.

 

3. سلکتور نزولی (Descendant Selector)

این سلکتور به شما این امکان رو می‌ده که همه عناصر خاصی رو که داخل یک عنصر دیگه هستن هدف بگیرید. برای این کار، سلکتورها رو با یک فاصله از هم جدا می‌کنید.

مثال: تغییر رنگ متن همه پاراگراف‌هایی که داخل یک دیو قرار دارن به سبز

HTML:

<div>
    <p>This is a paragraph.</p>
</div>
<p>This is another paragraph.</p>

CSS:

div p {
    color: green;
}

در اینجا، فقط پاراگراف‌هایی که داخل دیو هستن به رنگ سبز درمی‌آن.

 

4. سلکتور هم‌جوار (Adjacent Sibling Selector)

این سلکتور به شما امکان می‌ده که عناصر هم‌جوار رو هدف بگیرید. برای این کار از علامت + استفاده می‌کنید.

مثال: تغییر رنگ متن پاراگراف‌هایی که بعد از یک هدر <h1> قرار دارن به نارنجی

HTML:

<h1>This is a header.</h1>
<p>This paragraph is adjacent to the header.</p>
<p>This paragraph is non-contiguous.</p>

CSS:

h1 + p {
    color: orange;
}

در اینجا، فقط پاراگرافی که مستقیماً بعد از هدر قرار داره به رنگ نارنجی درمیان.

 

5. سلکتورهای شبه‌کلاس (Pseudo-Class Selectors)

سلکتورهای شبه‌کلاس برای انتخاب عناصر بر اساس حالت خاصی از اون‌ها استفاده می‌شن. به عنوان مثال، می‌تونید عناصر رو وقتی موس روی اون‌ها قرار می‌گیره یا وقتی عنصر در وضعیت خاصی هست، هدف بگیرید.

مثال: تغییر رنگ متن لینک‌ها وقتی موس روی اون‌ها قرار می‌گیره به قرمز

a:hover {
    color: red;
}

در اینجا، وقتی موس روی لینک‌ها قرار می‌گیره، رنگ متن اون‌ها قرمز می‌شه.

 

6. سلکتورهای شبه‌عنصر (Pseudo-Element Selectors)

سلکتورهای شبه‌عنصر به شما این امکان رو می‌دن که بخش خاصی از یک عنصر رو هدف بگیرید و بهش استایل بدید. برای این کار از :: استفاده می‌شه.

مثال: تغییر اولین حرف پاراگراف‌ها به رنگ آبی و اندازه بزرگ‌تر

p::first-letter {
    color: blue;
    font-size: 24px;
}

در اینجا، فقط اولین حرف هر پاراگراف به رنگ آبی و اندازه بزرگ‌تر درمی‌اد.

 

7. سلکتورهای ویژگی (Attribute Selectors)

سلکتورهای ویژگی به شما این امکان رو می‌دن که عناصری رو بر اساس ویژگی‌هاشون هدف بگیرید. برای این کار از علامت [] استفاده می‌کنید.

مثال: تغییر رنگ متن لینک‌هایی که ویژگی target="_blank" دارن به سبز

HTML:

<a href="https://example.com" target="_blank">This is a link.</a>
<a href="https://example.com">This is another link.</a>

CSS:

a[target="_blank"] {
    color: green;
}

در اینجا، فقط لینک‌هایی که ویژگی target="_blank" دارن به رنگ سبز درمی‌آن.

 

سلکتورها ابزارهای قدرتمندی هستن که به شما کمک می‌کنن تا دقیقاً تعیین کنید کدوم عناصر باید استایل بگیرن. با شناخت انواع مختلف سلکتورها و نحوه استفاده از اون‌ها، می‌تونید به راحتی استایل‌های پیچیده و حرفه‌ای رو به صفحات وب‌تون اضافه کنید.

 

روش‌های اضافه کردن CSS به صفحات سایت

 

1. استایل درون خطی(Inline CSS)

استایل درون خطی ساده‌ترین و سریع‌ترین روش برای اضافه کردن CSS به یک صفحه وب هست. در این روش، ما استایل‌ها رو مستقیماً به تگ‌های HTML اضافه می‌کنیم. این روش برای زمانی مناسبه که می‌خواهیم تغییرات کوچکی رو روی عناصر خاصی انجام بدیم.

مثال: تغییر رنگ متن یک پاراگراف به آبی

HTML:

<p style="color: blue;">This is a paragraph with blue text.</p>

در اینجا، ما با استفاده از ویژگی style و نوشتن color: blue; به تگ <p>، رنگ متن پاراگراف رو به آبی تغییر دادیم. این روش سریع و ساده است ولی برای پروژه‌های بزرگ و پیچیده مناسب نیست، چون مدیریت استایل‌ها سخت می‌شه و ممکنه کد تکراری زیادی داشته باشیم.

 

2. استایل داخلی (Internal CSS)

استایل داخلی یک روش دیگه برای اضافه کردن CSS به صفحات وب هست که به جای اضافه کردن مستقیم استایل‌ها به تگ‌های HTML، اون‌ها رو در بخش <head> صفحه قرار می‌دیم. این روش برای زمانی مناسبه که می‌خواهیم استایل‌های صفحه رو به صورت متمرکز و بدون نیاز به فایل خارجی مدیریت کنیم.

مثال: تغییر رنگ متن همه پاراگراف‌ها به سبز

HTML:

<!DOCTYPE html>
<html lang="fa">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>An example of Internal style</title>
    <style>
        p {
            color: green;
        }
    </style>
</head>
<body>
    <p>This is a paragraph with green text.</p>
    <p>This is another paragraph with green text.</p>
</body>
</html>

در اینجا، ما با استفاده از تگ <style> که در بخش <head> صفحه قرار گرفته، رنگ همه پاراگراف‌ها رو به سبز تغییر دادیم. این روش به ما اجازه می‌ده که همه استایل‌های صفحه رو در یک جا داشته باشیم، اما برای پروژه‌های بزرگ با صفحات متعدد ممکنه مدیریت استایل‌ها سخت بشه.

 

3. استایل خارجی (External CSS)

استایل خارجی به ما این امکان رو می‌ده که استایل‌های CSS رو در یک فایل جداگانه با پسوند .css ذخیره کنیم و اون رو به صفحه وب لینک کنیم. این روش به خصوص برای پروژه‌های بزرگ و زمانی که می‌خواهیم استایل‌های یکسانی رو در چندین صفحه استفاده کنیم، بسیار مناسب و کارآمده.

مثال: تغییر رنگ متن همه پاراگراف‌ها به قرمز

فایل HTML:

<!DOCTYPE html>
<html lang="fa">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Example of foreign style</title>
    <link rel="stylesheet" href="styles.css">
</head>
<body>
    <p>This is a paragraph with red text.</p>
    <p>This is another paragraph with red text.</p>
</body>
</html>

فایل styles.css:

p {
    color: red;
}

در اینجا، ما یک فایل CSS جداگانه با نام styles.css ایجاد کردیم و با استفاده از تگ <link> اون رو به فایل HTML لینک کردیم. حالا هر تغییری که در فایل styles.css بدیم، به همه صفحات وبی که به این فایل لینک شدن اعمال می‌شه. این روش به خصوص برای پروژه‌های بزرگ با صفحات متعدد و استایل‌های مشترک بسیار مناسب و بهینه است.

 

مزایا و معایب هر روش

استایل داخلی (Inline CSS):

  • مزایا: سریع و ساده، مناسب برای تغییرات کوچک.
  • معایب: مدیریت سخت، کد تکراری زیاد، مناسب نبودن برای پروژه‌های بزرگ.

استایل داخلی (Internal CSS):

  • مزایا: مدیریت متمرکز استایل‌ها، عدم نیاز به فایل خارجی.
  • معایب: سختی مدیریت در پروژه‌های بزرگ با صفحات متعدد.

استایل خارجی (External CSS):

  • مزایا: مدیریت ساده و کارآمد، مناسب برای پروژه‌های بزرگ، امکان استفاده از استایل‌های مشترک بین صفحات.
  • معایب: نیاز به فایل‌های خارجی، وابستگی به لینک درست فایل CSS.

 

بهترین روش برای اضافه کردن CSS به صفحات وب بستگی به اندازه و پیچیدگی پروژه داره. برای تغییرات کوچک و سریع می‌تونید از استایل داخلی استفاده کنید، ولی برای پروژه‌های بزرگ‌تر و حرفه‌ای‌تر، بهتره از استایل خارجی استفاده کنید تا مدیریت استایل‌ها ساده‌تر بشه و کدهای تمیزتر و بهینه‌تری داشته باشید.

 

کامنت‌گذاری در CSS

کامنت‌گذاری به شما این امکان رو می‌ده که توضیحات و یادداشت‌های خودتون رو داخل کدها بذارید بدون اینکه بر عملکرد نهایی اون‌ها تأثیری داشته باشه. کامنت‌ها برای مستندسازی کد، توضیح دادن بخش‌های پیچیده و حتی غیرفعال کردن کدها استفاده می‌شن. پس بیایید با هم یاد بگیریم که چطور از این ابزار مفید استفاده کنیم!

 

چگونه کامنت‌گذاری کنیم؟

کامنت‌گذاری در CSS بسیار ساده است. هر کامنت با علامت /* شروع و با */ پایان می‌یابد. هر چیزی که بین این دو علامت قرار بگیره، به عنوان کامنت در نظر گرفته می‌شه و توسط مرورگر نادیده گرفته می‌شه.

مثال: ایجاد یک کامنت ساده

/* This is a comment and will be ignored by the browser */

این کامنت به شما کمک می‌کنه تا توضیحات یا یادداشت‌های خودتون رو در کنار کدها قرار بدید و باعث می‌شه که کدهایتون خواناتر و قابل درک‌تر بشن.

 

استفاده از کامنت‌ها برای توضیح کد

یکی از مهم‌ترین کاربردهای کامنت‌ها، مستندسازی و توضیح دادن کدهاست. با استفاده از کامنت‌ها می‌تونید توضیح بدید که هر بخش از کد چه کاری انجام می‌ده و چرا از اون استفاده کردید.

مثال: توضیح یک بخش از کد

/* Change the background color of the page to pale blue to create a sense of relaxation */
body {
    background-color: lightblue;
}

در اینجا، کامنت توضیح می‌ده که هدف از تغییر رنگ پس‌زمینه صفحه به آبی کمرنگ چیه. این کار به دیگران کمک می‌کنه تا بهتر متوجه بشن که این کد چه کاری انجام می‌ده و چرا این تغییر اعمال شده.

 

استفاده از کامنت‌ها برای غیرفعال کردن کد

گاهی اوقات ممکنه بخواید بخشی از کد رو به طور موقت غیرفعال کنید بدون اینکه اون رو پاک کنید. در این موارد، می‌تونید از کامنت‌ها استفاده کنید تا اون بخش از کد رو نادیده بگیرید.

مثال: غیرفعال کردن یک استایل

/* p {
    color: red;
} */

p {
    color: blue;
}

در اینجا، استایل اول که رنگ پاراگراف رو به قرمز تغییر می‌ده با کامنت غیرفعال شده و استایل دوم که رنگ پاراگراف رو به آبی تغییر می‌ده فعال است.

 

استفاده از کامنت‌ها برای یادداشت‌های تیمی

در پروژه‌های تیمی، کامنت‌ها می‌تونن به عنوان یک ابزار مهم برای ارتباط و انتقال اطلاعات بین اعضای تیم استفاده بشن. با استفاده از کامنت‌ها، اعضای تیم می‌تونن یادداشت‌ها و توضیحات خودشون رو برای دیگران قرار بدن.

مثال: یادداشت برای اعضای تیم

/* Note: This part of the code is designed for old browsers and may need to be revised in new browsers. */
.old-browser-support {
    display: inline-block;
    zoom: 1;
}

در اینجا، کامنت به اعضای تیم اطلاع می‌ده که این بخش از کد برای پشتیبانی از مرورگرهای قدیمی استفاده شده و ممکنه در آینده نیاز به بازنگری داشته باشه.

 

کامنت‌های چندخطی

گاهی اوقات ممکنه بخواید توضیحات طولانی‌تری رو بنویسید که به چند خط نیاز دارن. در این موارد می‌تونید از کامنت‌های چندخطی استفاده کنید که مثل کامنت‌های معمولی با /* شروع و با */ پایان می‌یابن، اما شامل چند خط هستن.

مثال: ایجاد کامنت چندخطی

/*
This is a multi-line comment.
We can write more explanations about how the code works here.
This method helps us to have better documentation.
*/

این نوع کامنت‌ها برای توضیحات مفصل و دقیق‌تر بسیار مفید هستن و به شما کمک می‌کنن تا اطلاعات بیشتری رو در کدها قرار بدید.

 

یکی از نکات مهم درباره کامنت‌ها اینه که اونا هیچ تأثیری بر عملکرد و کارایی سایت ندارن. کامنت‌ها فقط برای کمک به شما و دیگر برنامه‌نویسان هستن تا کدها رو بهتر درک کنید. بنابراین، از کامنت‌ها به درستی استفاده کنید و نگران تأثیر اون‌ها بر سرعت یا کارایی سایت نباشید.

 

رنگ‌ها در CSS

در CSS، شما می‌تونید از چندین روش مختلف برای تعیین رنگ‌ها استفاده کنید، مثل RGB، HEX و HSL. هر کدوم از این روش‌ها ویژگی‌ها و مزایای خاص خودشون رو دارن. بیایید با هم این روش‌ها رو بررسی کنیم و یاد بگیریم چطور می‌تونیم از اون‌ها در پروژه‌های خودمون استفاده کنیم.

 

1. رنگ‌های RGB

RGB مخفف Red, Green, Blue (قرمز، سبز، آبی) است. در این مدل رنگی، هر رنگ ترکیبی از سه رنگ اصلی قرمز، سبز و آبی هست. شما می‌تونید با تغییر مقادیر این سه رنگ، رنگ‌های مختلفی رو ایجاد کنید. مقدار هر رنگ می‌تونه بین 0 تا 255 باشه.

مثال: تغییر رنگ پس‌زمینه به رنگ سبز روشن با استفاده از RGB

body {
    background-color: rgb(144, 238, 144);
}

در اینجا، rgb(144, 238, 144) ترکیبی از رنگ‌های قرمز، سبز و آبی هست که رنگ سبز روشن رو ایجاد می‌کنه. این مقدارها به ترتیب مقدارهای قرمز، سبز و آبی هستن. هرچه مقدار سبز بیشتر باشه، رنگ سبزتر خواهد بود.

 

2. رنگ‌های HEX

HEX یک سیستم کدگذاری بر اساس اعداد شانزده‌شانزده‌ای هست که برای تعیین رنگ‌ها استفاده می‌شه. در این روش، رنگ‌ها با یک کد شش‌رقمی مشخص می‌شن که با یک علامت # شروع می‌شه. این کد شش‌رقمی شامل دو رقم برای هر یک از رنگ‌های قرمز، سبز و آبی هست.

مثال: تغییر رنگ متن به رنگ آبی با استفاده از HEX

p {
    color: #0000FF;
}

در اینجا، #0000FF کد HEX برای رنگ آبی هست. 00 برای قرمز، 00 برای سبز و FF برای آبی است. هر چه مقدار FF بیشتر باشه، رنگ آبی‌تر خواهد بود.

 

3. رنگ‌های HSL

HSL مخفف Hue, Saturation, Lightness (ته‌رنگ، اشباع و روشنایی) است. در این مدل رنگی، رنگ‌ها به صورت یک چرخه دایره‌ای تعریف می‌شن که هر رنگ ته‌رنگ خاص خودش رو داره. ته‌رنگ به صورت درجه از 0 تا 360 اندازه‌گیری می‌شه و نشان‌دهنده رنگ اصلی هست. اشباع به صورت درصد بیان می‌شه و میزان غلظت رنگ رو نشون می‌ده. روشنایی هم به صورت درصد بیان می‌شه و میزان روشنایی یا تیرگی رنگ رو تعیین می‌کنه.

مثال: تغییر رنگ پس‌زمینه به رنگ قرمز با استفاده از HSL

div {
    background-color: hsl(0, 100%, 50%);
}

در اینجا، hsl(0, 100%, 50%) یک رنگ قرمز با ته‌رنگ 0 درجه، اشباع 100 درصد و روشنایی 50 درصد هست. هر چه اشباع بیشتر باشه، رنگ زنده‌تر و پررنگ‌تر خواهد بود.

 

ترکیب رنگ‌ها در CSS

می‌تونید از این روش‌های مختلف برای ایجاد رنگ‌های دلخواه و ایجاد طراحی‌های زیبا و منحصربه‌فرد در پروژه‌های وب خودتون استفاده کنید. به طور مثال، می‌تونید از ترکیب این روش‌ها برای ایجاد سایه‌ها، گرادینت‌ها و جلوه‌های دیگر استفاده کنید.

مثال: ایجاد سایه با استفاده از RGB

.box {
    box-shadow: 0 0 10px rgb(0, 0, 255, 0.5);
}

 

استفاده از رنگ‌ها برای ایجاد تعامل

رنگ‌ها نقش بسیار مهمی در طراحی تعاملات کاربری دارن. با استفاده از رنگ‌ها می‌تونید احساسات مختلف رو به کاربران القا کنید و اون‌ها رو به انجام فعالیت‌های خاصی ترغیب کنید. مثلاً استفاده از رنگ قرمز برای دکمه‌های هشدار یا استفاده از رنگ سبز برای دکمه‌های تایید می‌تونه تجربه کاربری بهتری رو ایجاد کنه.

مثال: تغییر رنگ دکمه هنگام هاور

button {
    background-color: #4CAF50; /* green color */
    color: white;
    padding: 10px 20px;
    border: none;
    cursor: pointer;
}

button:hover {
    background-color: #45a049; /* Darker green when hovering */
}

در اینجا، دکمه‌ای با رنگ سبز ایجاد شده که هنگام هاور کردن روی اون، رنگش به سبز تیره‌تر تغییر می‌کنه و باعث جلب توجه کاربر می‌شه.

 

با استفاده از مدل‌های مختلف رنگی مثل RGB، HEX و HSL، می‌تونید رنگ‌های متنوع و جذابی رو به صفحات وب خودتون اضافه کنید و تجربه کاربری بهتری ایجاد کنید. هر مدل رنگی ویژگی‌های خاص خودش رو داره و شما می‌تونید بسته به نیاز و شرایط، از هر کدوم از این مدل‌ها استفاده کنید. 

 

پس‌زمینه‌ها در CSS

پس‌زمینه‌ها در CSS می‌تونن ظاهر و حس بصری صفحات وب رو به کلی تغییر بدن. با استفاده از ویژگی‌های مختلف مثل background-color، background-image، background-repeat، background-attachment، background-position و background، می‌تونید پس‌زمینه‌های زیبا و حرفه‌ای ایجاد کنید. در ادامه، هر کدوم از این ویژگی‌ها رو با مثال‌های کاربردی بررسی می‌کنیم تا بتونید از اون‌ها در پروژه‌هاتون استفاده کنید.

 

1. background-color: تنظیم رنگ پس‌زمینه

ویژگی background-color به شما اجازه می‌ده تا رنگ پس‌زمینه هر عنصر HTML رو تغییر بدید. این ویژگی بسیار ساده و در عین حال قدرتمند هست.

مثال: تغییر رنگ پس‌زمینه به آبی روشن

body {
    background-color: lightblue;
}

در این مثال، رنگ پس‌زمینه کل صفحه به آبی روشن (lightblue) تغییر کرده. شما می‌تونید از هر رنگ دلخواهی استفاده کنید، مثل رنگ‌های نام‌گذاری شده (مثل red، blue)، کدهای HEX (مثل #FF5733) یا کدهای RGB (مثل rgb(255, 87, 51)).

 

2. background-image: استفاده از تصویر به عنوان پس‌زمینه

با استفاده از ویژگی background-image می‌تونید تصاویری رو به عنوان پس‌زمینه برای عناصر HTML خودتون استفاده کنید.

مثال: اضافه کردن تصویر به عنوان پس‌زمینه

body {
    background-image: url('https://www.example.com/image.jpg');
}

در اینجا، یک تصویر از URL مشخص شده به عنوان پس‌زمینه کل صفحه اضافه شده. شما می‌تونید از مسیرهای محلی یا URLهای وب برای استفاده از تصاویر بهره ببرید.

 

3. background-repeat: تنظیم تکرار تصویر پس‌زمینه

به صورت پیش‌فرض، تصاویر پس‌زمینه در CSS تکرار می‌شن تا تمام فضای عنصر رو بپوشونن. با استفاده از ویژگی background-repeat می‌تونید این رفتار رو کنترل کنید.

مثال: جلوگیری از تکرار تصویر پس‌زمینه

body {
    background-image: url('https://www.example.com/image.jpg');
    background-repeat: no-repeat;
}

در این مثال، تصویر پس‌زمینه فقط یک بار نمایش داده می‌شه و تکرار نمی‌شه. شما می‌تونید از مقادیر دیگری مثل repeat-x (تکرار در محور X) یا repeat-y (تکرار در محور Y) هم استفاده کنید.

 

4. background-attachment: تنظیم رفتار تصویر پس‌زمینه در هنگام اسکرول

با استفاده از ویژگی background-attachment می‌تونید تعیین کنید که آیا تصویر پس‌زمینه هنگام اسکرول کردن صفحه ثابت بمونه یا همراه با محتوا حرکت کنه.

مثال: ثابت نگه‌داشتن تصویر پس‌زمینه در هنگام اسکرول

body {
    background-image: url('https://www.example.com/image.jpg');
    background-attachment: fixed;
}

در اینجا، تصویر پس‌زمینه ثابت شده و حتی زمانی که صفحه اسکرول می‌شه، تصویر همچنان در جای خودش باقی می‌مونه. مقدار پیش‌فرض scroll هست که تصویر همراه با محتوا اسکرول می‌شه.

 

5. background-position: تنظیم موقعیت تصویر پس‌زمینه

با استفاده از ویژگی background-position می‌تونید موقعیت تصویر پس‌زمینه رو تعیین کنید. این ویژگی به شما اجازه می‌ده که تصویر رو به نقاط مختلف عنصر (مثل مرکز، گوشه‌ها، و غیره) منتقل کنید.

مثال: قرار دادن تصویر پس‌زمینه در مرکز

body {
    background-image: url('https://www.example.com/image.jpg');
    background-position: center;
}

در اینجا، تصویر پس‌زمینه در مرکز صفحه قرار گرفته. شما می‌تونید از مقادیر دیگری مثل top left، bottom right و حتی مقادیر درصدی مثل 50% 50% هم استفاده کنید تا تصویر رو دقیقاً جایی که می‌خواید قرار بدید.

 

6. background: ویژگی shorthand برای تنظیم پس‌زمینه

ویژگی background یک ویژگی shorthand هست که به شما اجازه می‌ده تا چندین ویژگی مرتبط با پس‌زمینه رو به صورت هم‌زمان تنظیم کنید. این ویژگی بسیار کاربردی و راحت هست و می‌تونید چندین ویژگی رو در یک خط کد تعریف کنید.

مثال: تنظیم پس‌زمینه با استفاده از ویژگی shorthand

body {
    background: url('https://www.example.com/image.jpg') no-repeat center fixed;
    background-size: cover;
}

در اینجا، ما از ویژگی shorthand برای تنظیم چندین ویژگی پس‌زمینه به صورت هم‌زمان استفاده کردیم. تصویر پس‌زمینه اضافه شده، تکرار نمی‌شه، در مرکز قرار می‌گیره و هنگام اسکرول کردن ثابت می‌مونه. همچنین از ویژگی background-size با مقدار cover استفاده کردیم تا تصویر به اندازه کل صفحه کشیده بشه و بدون تغییر نسبت‌ها، تمام صفحه رو بپوشونه.

 

ترکیب و تنظیمات پیشرفته

با ترکیب این ویژگی‌ها، شما می‌تونید پس‌زمینه‌های بسیار متنوع و جذابی ایجاد کنید که به طراحی صفحات وب شما زندگی و جذابیت بیشتری می‌بخشن. در ادامه چند مثال پیشرفته‌تر رو بررسی می‌کنیم.

مثال: ایجاد پس‌زمینه با ترکیب چندین ویژگی

div {
    width: 300px;
    height: 200px;
    background: linear-gradient(to right, rgba(255, 0, 0, 0.5), rgba(0, 0, 255, 0.5)), url('https://www.example.com/image.jpg') center/cover no-repeat fixed;
    border: 2px solid black;
}

در این مثال، ما از یک گرادینت خطی به عنوان لایه اول پس‌زمینه استفاده کردیم که از قرمز به آبی تغییر می‌کنه و دارای شفافیت هست. در لایه دوم، یک تصویر به عنوان پس‌زمینه اضافه کردیم که در مرکز قرار گرفته، به اندازه کل عنصر کشیده شده و تکرار نمی‌شه. این ترکیب باعث ایجاد یک جلوه بصری جذاب و پیچیده شده که به راحتی قابل دستیابی با استفاده از CSS هست.

 

خصوصیت border در CSS

 این ویژگی به شما اجازه می‌ده تا به راحتی حاشیه‌هایی برای عناصر مختلف وب‌سایت‌تون تعریف کنید و ظاهر اونا رو زیباتر و جذاب‌تر کنید. border یکی از ویژگی‌های کلیدی CSS هست که با اون می‌تونید انواع حاشیه‌ها رو با رنگ‌ها، ضخامت‌ها و استایل‌های مختلف ایجاد کنید. بیایید با هم ببینیم چطور می‌تونیم از این خصوصیت به بهترین شکل استفاده کنیم!

 

خصوصیت border چیست؟

border به حاشیه‌ای گفته می‌شه که دور تا دور یک عنصر قرار می‌گیره و می‌تونید رنگ، ضخامت و استایل اون رو تغییر بدید. با استفاده از این ویژگی می‌تونید به راحتی حاشیه‌هایی برای عناصر مختلف وب‌سایت‌تون ایجاد کنید و ظاهر اونا رو بهبود بدید.

 

نحوه تنظیم border با ویژگی‌های مختلف

ویژگی border از سه قسمت تشکیل شده: رنگ (color)، ضخامت (width) و استایل (style). هر کدوم از این قسمت‌ها می‌تونن به صورت جداگانه تنظیم بشن یا با استفاده از ویژگی shorthand همه رو با هم تنظیم کنید.

 

تعریف ساده border

برای تعریف یک حاشیه ساده، از ترکیب ویژگی‌های border-width، border-style و border-color استفاده می‌کنیم.

مثال: تعریف یک حاشیه ساده برای یک div

<div class="box">This is a box with a simple border</div>

 

.box {
    border-width: 2px;
    border-style: solid;
    border-color: black;
}

در این مثال، ما یک حاشیه با ضخامت 2 پیکسل، استایل solid (توپر) و رنگ سیاه برای div تعریف کردیم. این حاشیه دور تا دور عنصر قرار می‌گیره و اون رو مشخص‌تر می‌کنه.

 

استفاده از ویژگی shorthand برای border

با استفاده از ویژگی shorthand border می‌تونید به راحتی و در یک خط، تمام ویژگی‌های حاشیه رو تعریف کنید.

مثال: استفاده از ویژگی shorthand برای تعریف حاشیه

<div class="box">This is a box with a shortened border</div>

 

.box {
    border: 2px solid black;
}

در اینجا، تمام ویژگی‌های حاشیه رو در یک خط کد ترکیب کردیم. این روش کار رو ساده‌تر و کد رو خواناتر می‌کنه.

 

انواع استایل‌های border

در CSS، شما می‌تونید از انواع مختلفی از استایل‌ها برای حاشیه‌ها استفاده کنید. برخی از این استایل‌ها عبارت‌اند از:

  • solid: حاشیه توپر
  • dashed: حاشیه خط‌چین
  • dotted: حاشیه نقطه‌چین
  • double: حاشیه دوتایی
  • groove: حاشیه فرورفته
  • ridge: حاشیه برجسته
  • inset: حاشیه داخلی
  • outset: حاشیه خارجی

مثال: استفاده از انواع استایل‌های border

<div class="box-solid">border solid</div>
<div class="box-dashed">border dashed</div>
<div class="box-dotted">border dotted</div>
<div class="box-double">borderdouble</div>
<div class="box-groove">border groove</div>
<div class="box-ridge">border ridge</div>
<div class="box-inset">border inset</div>
<div class="box-outset">border outset</div>

 

.box-solid { border: 2px solid black; }
.box-dashed { border: 2px dashed black; }
.box-dotted { border: 2px dotted black; }
.box-double { border: 4px double black; }
.box-groove { border: 4px groove black; }
.box-ridge { border: 4px ridge black; }
.box-inset { border: 4px inset black; }
.box-outset { border: 4px outset black; }

در اینجا، برای هر div یک استایل حاشیه متفاوت تعریف کردیم. هر کدوم از این استایل‌ها ظاهر و حس متفاوتی به عنصر می‌دن و شما می‌تونید بر اساس نیاز و سلیقه‌تون از اون‌ها استفاده کنید.

 

تنظیم حاشیه‌های جداگانه برای هر سمت (top، right، bottom، left)

شما می‌تونید برای هر سمت از عنصر، حاشیه متفاوتی تعریف کنید. این کار رو با استفاده از ویژگی‌های border-top، border-right، border-bottom و border-left انجام می‌دیم.

مثال: تنظیم حاشیه‌های متفاوت برای هر سمت

<div class="box">Different margins for each side</div>

 

.box {
    border-top: 2px solid red;
    border-right: 4px dashed blue;
    border-bottom: 6px dotted green;
    border-left: 8px double orange;
}

در این مثال، ما برای هر سمت از عنصر یک حاشیه متفاوت با رنگ، ضخامت و استایل مختلف تعریف کردیم. این امکان به شما انعطاف بیشتری برای طراحی و استایل‌دهی به عناصر وب‌تون می‌ده.

 

استفاده از رنگ‌های مختلف برای حاشیه‌ها

شما می‌تونید از رنگ‌های مختلف برای حاشیه‌ها استفاده کنید و جلوه‌های بصری جذابی ایجاد کنید.

مثال: استفاده از رنگ‌های مختلف برای هر سمت از حاشیه

<div class="box">حاشیه‌های رنگارنگ</div>

 

.box {
    border-top: 4px solid red;
    border-right: 4px solid blue;
    border-bottom: 4px solid green;
    border-left: 4px solid orange;
}

در اینجا، هر سمت از حاشیه با یک رنگ متفاوت رنگ‌آمیزی شده. این روش به شما امکان می‌ده تا از رنگ‌های مختلف برای ایجاد جذابیت بیشتر استفاده کنید.

 

خصوصیت border-radius: ایجاد گوشه‌های گرد

با استفاده از ویژگی border-radius می‌تونید گوشه‌های عناصر رو گرد کنید. این ویژگی می‌تونه به ظاهر عناصر حس نرمی و ظرافت بیشتری بده.

مثال: ایجاد گوشه‌های گرد برای یک div

<div class="box">Rounded corners</div>

 

.box {
    border: 2px solid black;
    border-radius: 15px;
}

در این مثال، با استفاده از ویژگی border-radius گوشه‌های عنصر div رو گرد کردیم. مقدار 15px نشان‌دهنده شعاع گوشه‌هاست که می‌تونید اون رو بر اساس نیاز تغییر بدید.

 

استفاده از ویژگی border-style به تنهایی

شما می‌تونید به طور جداگانه از ویژگی border-style استفاده کنید و فقط استایل حاشیه رو تعریف کنید. این ویژگی زمانی کاربرد داره که بخواید از استایل خاصی برای حاشیه استفاده کنید بدون اینکه نیاز به تعریف رنگ یا ضخامت داشته باشید.

مثال: تعریف استایل حاشیه بدون رنگ و ضخامت

<div class="box">Margin only with style</div>

 

.box {
    border-style: dashed;
}

در اینجا، فقط استایل حاشیه رو تعریف کردیم و مرورگر به صورت پیش‌فرض، رنگ سیاه و ضخامت یک پیکسل رو برای حاشیه در نظر می‌گیره.

 

استفاده از border-image: تنظیم تصویر به عنوان حاشیه

با استفاده از ویژگی border-image می‌تونید از تصاویر برای ایجاد حاشیه‌های خاص و زیبا استفاده کنید. این ویژگی به شما اجازه می‌ده تا تصاویر رو به عنوان حاشیه برش بزنید و تنظیم کنید.

مثال: استفاده از تصویر به عنوان حاشیه

<div class="box">Border with image</div>

 

.box {
    border: 10px solid transparent;
    border-image: url('https://www.example.com/border.png') 30 stretch;
}

در این مثال، از یک تصویر برای ایجاد حاشیه استفاده کردیم. تصویر بر اساس مقدار 30 برش خورده و کشیده شده تا حاشیه رو تشکیل بده. ویژگی stretch مشخص می‌کنه که تصویر برای پر کردن فضا کشیده بشه.

 

خصوصیت Margin در CSS

این ویژگی به شما امکان می‌ده تا فاصله بین عناصر مختلف رو تعیین کنید و با استفاده از اون‌ها، چیدمان و ظاهر صفحات وب‌تون رو بهبود بدید. margin یکی از ویژگی‌های کلیدی در CSS هست که به شما کمک می‌کنه تا فضاها و فاصله‌های مناسبی رو بین عناصر ایجاد کنید و از به هم‌ریختگی و تداخل جلوگیری کنید. بیایید با هم نگاهی به نحوه کار با خصوصیت margin و تنظیمات مختلف اون بندازیم!

 

خصوصیت Margin چیست؟

margin به فاصله‌ای گفته می‌شه که بین یک عنصر و عناصر اطرافش قرار می‌گیره. این فاصله می‌تونه به همه جهات (بالا، پایین، چپ و راست) یا فقط به یکی از اون‌ها اعمال بشه. با استفاده از این ویژگی، شما می‌تونید فاصله‌ای که یک عنصر از عناصر مجاورش داره رو تعیین کنید.

 

نحوه تنظیم Margin با واحدهای مختلف

شما می‌تونید margin رو با استفاده از واحدهای مختلفی مثل پیکسل (px)، درصد (%)، ام (em) و حتی مقادیر خودکار (auto) تنظیم کنید.

مثال: تنظیم Margin با استفاده از پیکسل

<div class="box">This is a box with a margin</div>

 

.box {
    margin: 20px;
}

در این مثال، ما یک فاصله 20 پیکسلی دور تا دور عنصر div ایجاد کردیم. این فاصله به طور مساوی به همه جهات (بالا، پایین، چپ و راست) اعمال می‌شه.

 

مثال: تنظیم Margin با استفاده از درصد

<div class="box">This is a box with a percentage margin</div>

 

.box {
    margin: 10%;
}

در این مثال، فاصله 10 درصدی دور تا دور عنصر ایجاد شده که نسبت به عرض والد خودش محاسبه می‌شه.

 

استفاده از ویژگی‌های margin-top، margin-right، margin-bottom، margin-left

شما می‌تونید margin رو برای هر سمت از عنصر به صورت جداگانه تعریف کنید.

مثال: تنظیم Margin برای هر سمت به صورت جداگانه

<div class="box">This is a box with a separate margin</div>

 

.box {
    margin-top: 10px;
    margin-right: 15px;
    margin-bottom: 20px;
    margin-left: 25px;
}

در این مثال، برای هر سمت از عنصر یک مقدار متفاوت برای margin تنظیم شده. این کار به شما اجازه می‌ده تا فواصل مختلفی برای هر سمت تعیین کنید.

 

استفاده از ویژگی shorthand برای Margin

شما می‌تونید با استفاده از ویژگی shorthand، margin رو به صورت مختصر و در یک خط کد تعریف کنید. این ویژگی به شما امکان می‌ده تا فواصل چهار جهت رو به طور هم‌زمان تنظیم کنید.

مثال: استفاده از ویژگی shorthand برای تعریف Margin

<div class="box">This is a box with margin shorthand</div>

 

.box {
    margin: 10px 15px 20px 25px;
}

در این مثال، به ترتیب فاصله‌ها برای چهار جهت (بالا، راست، پایین، چپ) تعیین شده. این روش کار رو ساده‌تر و کد رو خواناتر می‌کنه.

 

استفاده از Margin با مقدار auto

استفاده از مقدار auto برای margin، به خصوص در مورد عناصر بلوکی، بسیار کاربردی هست و باعث می‌شه که عنصر به صورت خودکار در مرکز قرار بگیره.

مثال: استفاده از Margin با مقدار auto برای مرکز کردن یک عنصر

<div class="container">
    <div class="box">This is a box with auto margin</div>
</div>

 

.container {
    width: 80%;
    margin: 0 auto;
}

.box {
    width: 50%;
    margin: 10px auto;
}

در این مثال، div با کلاس box به صورت افقی در مرکز والد خودش (container) قرار گرفته. استفاده از auto برای margin-left و margin-right باعث می‌شه که عنصر به طور خودکار در مرکز صفحه قرار بگیره.

 

استفاده از Margin به عنوان فضای بیرونی (Margin Collapse)

یکی از ویژگی‌های جالب margin اینه که وقتی دو عنصر با فاصله‌های بیرونی (margin) به هم می‌رسن، این فاصله‌ها ممکنه روی هم بیفتن و به همدیگه نفوذ کنن. این رفتار به عنوان Margin Collapse شناخته می‌شه.

مثال: نحوه کار Margin Collapse

<div class="box1">box 1</div>
<div class="box2">box 2</div>

 

.box1 {
    margin-bottom: 30px;
}

.box2 {
    margin-top: 20px;
}

در این مثال، به جای اینکه مجموع فاصله‌ها 50 پیکسل (30 + 20) بشه، فاصله نهایی بین دو عنصر 30 پیکسل خواهد بود (بیشترین مقدار). این رفتار به بهینه‌سازی فضا و جلوگیری از فاصله‌های زیاد کمک می‌کنه.

 

حذف Margin‌های پیش‌فرض با استفاده از Margin: 0

برخی عناصر HTML به طور پیش‌فرض دارای فاصله‌های خارجی هستن که ممکنه بخواید اون‌ها رو حذف کنید. با استفاده از margin: 0 می‌تونید تمام فاصله‌های پیش‌فرض رو حذف کنید.

مثال: حذف Margin‌های پیش‌فرض از یک عنصر HTML

<p>This is a paragraph.</p>

 

p {
    margin: 0;
}

در اینجا، تمام فاصله‌های پیش‌فرض از عنصر p حذف شده. این کار به شما کنترل کامل‌تری بر روی فاصله‌ها و چیدمان صفحه می‌ده.

 

Margin و Flexbox: تنظیم فاصله بین عناصر در یک Flex Container

در هنگام استفاده از Flexbox، margin می‌تونه به شما کمک کنه تا فاصله‌های متناسبی بین عناصر داخل یک flex container ایجاد کنید.

مثال: استفاده از Margin برای فاصله دادن بین آیتم‌های Flexbox

<div class="flex-container">
    <div class="box">item 1</div>
    <div class="box">item 2</div>
    <div class="box">item 3</div>
</div>

 

.flex-container {
    display: flex;
    justify-content: space-between;
}

.box {
    margin: 0 10px;
}

در این مثال، از flex برای چیدمان آیتم‌ها استفاده کردیم و با استفاده از margin، فاصله‌های مناسبی بین آیتم‌ها ایجاد کردیم. این روش به شما امکان می‌ده تا به راحتی چیدمان عناصر رو بهینه کنید.

 

ایجاد فضای بین خطی (Inline) با Margin

وقتی از margin در عناصر خطی مثل span یا a استفاده می‌کنید، می‌تونید فاصله‌های ظریفی بین این عناصر ایجاد کنید.

مثال: استفاده از Margin در عناصر Inline

<span class="inline-box">item 1</span>
<span class="inline-box">item 2</span>
<span class="inline-box">item 3</span>

 

.inline-box {
    margin-right: 10px;
}

در اینجا، با استفاده از margin-right، فاصله کوچکی بین عناصر خطی (span) ایجاد کردیم. این روش می‌تونه به شما کمک کنه تا چیدمان و فاصله‌های مناسبی بین عناصر خطی داشته باشید.

 

Margin و Media Queries: تنظیم فواصل بر اساس اندازه صفحه

با استفاده از Media Queries، می‌تونید margin رو بر اساس اندازه صفحه تغییر بدید و چیدمان ریسپانسیو ایجاد کنید.

مثال: تنظیم Margin بر اساس اندازه صفحه

<div class="responsive-box">This is a responsive box</div>

 

.responsive-box {
    margin: 20px;
}

@media (max-width: 600px) {
    .responsive-box {
        margin: 10px;
    }
}

در این مثال، margin برای اندازه صفحه بزرگتر از 600 پیکسل 20 پیکسل و برای صفحه‌های کوچکتر 10 پیکسل تنظیم شده. این کار به شما کمک می‌کنه تا فاصله‌های مناسبی رو بر اساس اندازه صفحه ایجاد کنید و چیدمان ریسپانسیو داشته باشید.

 

خب، به پایان اولین بخش از دوره آموزشی CSS رسیدیم. توی این قسمت، از تعریف و چیستی CSS شروع کردیم و فهمیدیم چطور با استفاده از این زبان استایل‌دهی، می‌تونیم ظاهر و چیدمان سایت‌هامون رو تغییر بدیم. با تاریخچه CSS آشنا شدیم و دیدیم که این فناوری چطور در طول زمان پیشرفت کرده و به اینجا رسیده. همچنین، ساختار قوانین CSS و روش‌های مختلف اضافه کردن CSS به صفحات وب رو بررسی کردیم و یاد گرفتیم که چطور می‌تونیم استایل‌ها رو به عناصر HTML اعمال کنیم.

در ادامه، سلکتورها و انواع مختلف اون‌ها رو بررسی کردیم و یاد گرفتیم چطور می‌تونیم عناصر مختلف رو هدف بگیریم. در مورد رنگ‌ها و روش‌های تعریف اون‌ها مثل RGB، HEX و HSL صحبت کردیم و با کاربرد ویژگی‌های پس‌زمینه، border و margin آشنا شدیم. امیدوارم این مطالب براتون مفید بوده باشه و منتظر قسمت‌های بعدی باشید که به موضوعات جذاب‌تر و کاربردی‌تر CSS می‌پردازیم. تا قسمت بعدی، موفق باشید!

ارسال دیدگاه