شرح خاصية الحدود في CSS: الأنماط والأكواد وأمثلة عملية
ما هي خاصية border في CSS؟
في لغة CSS، يُعامل كل عنصر على الصفحة بوصفه صندوقاً مستقلاً، سواء كان نصاً، أو صورة، أو عنصراً من نوع div، أو span، أو غير ذلك. ولكل صندوق حدود تفصل بينه وبين العناصر المحيطة به. وهنا تأتي أهمية الخاصية border التي تمنحك تحكماً دقيقاً في شكل الحدود وسُمكها وألوانها وحتى انحناء زواياها.
فهم هذه الخاصية لا يفيد فقط في تحسين المظهر البصري للصفحات، بل يساعد أيضاً في تتبع المشكلات أثناء التطوير، لأن الحدود تُظهر أبعاد العناصر ومساحاتها بوضوح. في هذا الدليل، سنتناول خصائص الحدود في CSS بأسلوب عملي ومنظم، مع أمثلة قابلة للتطبيق مباشرة.

الخصائص الأساسية المرتبطة بالحدود في CSS
رغم أن الخاصية border تُستخدم كثيراً بصيغتها المختصرة، فإنها في الواقع تعتمد على مجموعة من الخصائص الفرعية المهمة، وأبرزها:
border-widthلتحديد سُمك الحد.border-styleلتحديد نمط الحد.border-colorلتحديد لون الحد.border-radiusلتدوير الزوايا وجعلها مستديرة.
سنتعرف الآن على وظيفة كل خاصية على حدة.
التحكم في سُمك الحدود باستخدام border-width
تُستخدم الخاصية border-width لتحديد عرض الحد. وغالباً ما تُكتب القيمة بوحدة px، لكن يمكن أيضاً استخدام وحدات مثل rem وem وحتى النسب المئوية % في بعض السياقات.
كما تقبل هذه الخاصية قيماً جاهزة مثل:
thinmediumthick
وتُعد border-width صيغة مختصرة لخصائص أكثر تفصيلاً، وهي:
border-top-widthborder-right-widthborder-bottom-widthborder-left-width
هذا يعني أنك تستطيع تعيين سُمك مختلف لكل جهة من جهات العنصر إذا احتجت إلى تصميم أكثر تخصيصاً.
اختيار شكل الحد عبر border-style
تحدد الخاصية border-style المظهر العام للحد. ومن دون تعيين نمط واضح، قد لا يظهر الحد حتى لو حددت اللون والسُمك. من أشهر القيم التي تدعمها هذه الخاصية:
noneبدون حد.solidحد متصل.dashedحد متقطع بشرطات.dottedحد منقط.doubleحد مزدوج.grooveridgeinsetoutset
وكما هو الحال مع الخاصية السابقة، فإن border-style تُعد اختصاراً للخصائص التالية:
border-top-styleborder-right-styleborder-bottom-styleborder-left-style
وبذلك يمكنك استخدام نمط مختلف لكل جانب من جوانب العنصر حسب الحاجة.
تخصيص الألوان من خلال border-color
تسمح لك الخاصية border-color باختيار لون الحد بالطريقة التي تناسبك، سواء باستخدام أسماء الألوان، أو قيم RGB، أو HSL، أو الأكواد السداسية مثل #3498db.
اللون الافتراضي للحدود هو الأسود، لذلك إذا قمت بتحديد كل من border-width وborder-style ولم تحدد لوناً، فغالباً سيظهر الحد باللون الأسود.
كما يمكن تخصيص لون مختلف لكل جهة باستخدام الخصائص الآتية:
border-top-colorborder-right-colorborder-bottom-colorborder-left-color
أمثلة عملية على خصائص الحدود الفرعية
مثال HTML لعنصر الصورة
<img src="freecodecamp.png" alt="freecodecamp-img" />
تعيين قيم مختلفة لكل جانب من جوانب الحد
img {
display: block;
margin: 0 auto;
margin-top: 1rem;
}
img {
border-top-width: 2px;
border-right-width: 4px;
border-bottom-width: 6px;
border-left-width: 8px;
border-top-style: solid;
border-right-style: dotted;
border-bottom-style: dashed;
border-left-style: groove;
border-top-color: #006100;
border-right-color: #050116;
border-bottom-color: #2ecc71;
border-left-color: #3498db;
}

استخدام خصائص موحدة للحدود
img {
display: block;
margin: 0 auto;
margin-top: 1rem;
}
img {
border-width: 8px;
border-style: solid;
border-color: #006100;
}

تجربة نمط outset
img {
border-width: 10px;
border-style: outset;
border-color: #006100;
}

جرّب تعديل القيم السابقة بنفسك، فالممارسة المباشرة أفضل وسيلة لفهم أثر كل خاصية على النتيجة النهائية.
استخدام الصيغة المختصرة border
بدلاً من كتابة border-width وborder-style وborder-color كل واحدة على حدة، يمكنك جمعها كلها في سطر واحد عبر الخاصية المختصرة border. وهذا الأسلوب مناسب جداً عندما تريد تطبيق نفس الإعدادات على الجهات الأربع.
img {
border: 2px solid #006100;
}

هذه الصيغة المختصرة تجعل الكود أنظف وأسهل قراءة، خصوصاً في المشاريع الكبيرة التي تتطلب قابلية صيانة عالية.
تدوير الزوايا عبر border-radius
إذا كنت تريد التخلص من الزوايا الحادة وإضافة لمسة أكثر نعومة وحداثة إلى التصميم، فإن الخاصية border-radius هي الخيار المثالي. تُستخدم هذه الخاصية لجعل الزوايا دائرية أو شبه دائرية بحسب القيمة المحددة.
يمكن كتابة القيمة بوحدة px أو باستخدام النسبة المئوية %. على سبيل المثال:
img {
border: 2px solid #006100;
border-radius: 10px;
}

تخصيص كل زاوية على حدة
مثل غيرها من الخصائص المختصرة، يمكن تفكيك border-radius إلى خصائص فرعية للتحكم المنفصل في كل زاوية:
border-top-right-radiusborder-top-left-radiusborder-bottom-right-radiusborder-bottom-left-radius
إليك مثالاً يوضح ذلك:
img {
border: 2px solid #006100;
border-top-right-radius: 10px;
border-top-left-radius: 30px;
border-bottom-right-radius: 50px;
border-bottom-left-radius: 100px;
}

مقارنة سريعة بين أشهر خصائص الحدود
| الخاصية | وظيفتها | مثال مختصر |
|---|---|---|
border-width |
تحديد سُمك الحد | border-width: 2px; |
border-style |
تحديد شكل الحد | border-style: solid; |
border-color |
تحديد لون الحد | border-color: red; |
border |
صيغة مختصرة تجمع السمك والنمط واللون | border: 1px solid #000; |
border-radius |
تدوير الزوايا | border-radius: 12px; |
مشروع تطبيقي: رسم حلقات الأولمبياد باستخدام border
من أفضل طرق تثبيت المفاهيم تطبيقها في مشروع بصري بسيط. هنا سنستخدم ما تعلمناه عن الخاصية border مع Flexbox وخصائص التموضع لرسم حلقات الأولمبياد الشهيرة.
كود HTML
<section class="container">
<section class="top">
<div class="red"></div>
<div class="black"></div>
<div class="blue"></div>
</section>
<section class="bottom">
<div class="green"></div>
<div class="yellow"></div>
</section>
</section>
كود CSS
div {
height: 12.5rem;
width: 12.5rem;
border: 12px solid;
border-radius: 50%;
margin: 1rem;
}
.blue {
color: #3498db;
}
.black {
color: black;
position: relative;
z-index: 1000;
}
.red {
color: #ca2e2e;
}
.yellow {
color: #ffa600;
}
.green {
color: #19a019;
}
.container {
display: flex;
align-items: center;
justify-content: center;
transform: rotate(90deg);
}
.bottom {
position: relative;
right: 8.125rem;
}
@media screen and (max-width: 750px) {
div {
width: 130px;
height: 130px;
}
.bottom {
right: 7rem;
}
}
كيف يعمل هذا المثال؟
- تم إنشاء خمس دوائر تمثل ألوان الحلقات: الأزرق، الأسود، الأحمر، الأصفر، والأخضر.
- لتحويل عناصر
divإلى دوائر، تم ضبط كل منwidthوheightعلى القيمة نفسها، ثم تعيينborder-radius: 50%. - استُخدمت الخاصية
borderلإظهار محيط الدائرة فقط. - تم ترتيب العناصر داخل حاويتين باستخدام
Flexboxلتكوين صف علوي وصف سفلي. - أُضيفت بعض التعديلات عبر
positionوz-indexلإظهار تداخل الحلقات بشكل أقرب إلى الشعار الحقيقي. - تمت إضافة قاعدة
@mediaلتحسين العرض على الشاشات الأصغر.

أفضل ممارسات استخدام الحدود في التصميم
- استخدم الحدود لتوضيح بنية العناصر، لا لمجرد الزخرفة فقط.
- احرص على اختيار ألوان حدود منسجمة مع هوية التصميم العامة.
- تجنب الإفراط في استخدام أنماط مثل
dashedوdoubleما لم يكن لها هدف بصري واضح. - استفد من
border-radiusلإضفاء نعومة على البطاقات والأزرار وحقول الإدخال. - اعتمد الصيغة المختصرة
borderعندما تكون الإعدادات موحدة، واستخدم الخصائص الفرعية عند الحاجة إلى تخصيص أدق.
الخلاصة التقنية
تُعد خاصية border من الأدوات الأساسية في CSS، لأنها تجمع بين الوظيفة العملية واللمسة الجمالية. ومن خلال فهم خصائصها الفرعية مثل border-width وborder-style وborder-color وborder-radius، يمكنك بناء واجهات أكثر وضوحاً وتنظيماً واحترافية. تقنياً، كلما أتقنت استخدام الحدود بشكل ذكي، أصبحت أكثر قدرة على تحسين تجربة المستخدم وتسهيل صيانة الواجهات في المشاريع الحقيقية.