النتائج 1 إلى 14 من 14

الموضوع: [درس مفصل] نموذج الصندوق في CSS

  1. #1
    عبدالعزيز الزرعوني
    تاريخ التسجيل
    Feb 2004
    المشاركات
    3,128

    [درس مفصل] نموذج الصندوق في CSS




    يعتبر نموذج الصندوق في CSS او Box Model من أهم المبادئ الأساسية التي يجب أن يبدأ بها من يريد أن يحترف لغة الأنماط الإنسيابية CSS، ولدى منظمة الويب العالمية مقال موسع عن نموذج الإطار في هذا المجال لمن يريد أن يستفيد أكثر. في درسي هذا سأحاول تلخيص أهم هذه المبادئ وبعد انتهائك من هذا الدرس سوف تتعلم الفرق بين عناصر الكتلة وعناصر السرد، وظائف وخصائص كل من padding، margin، border، background.

    من أهم المفاهيم التي يجب أن تعرفها وتحفظها عن ظهر غيب هي أن كل عنصر في HTML عبارة عن صندوق، ولكن الاختلاف هو نوعية هذا الصندوق أو العنصر، حسنا للتوضيح أكثر أنظر إلى الصورة التالية:



    كما قلت سابقا فإن كل عنصر من عناصر HTML يعتبره المتصفح صندوق، وهذا الصندوق يكون محاطا بخصائص، كالطول، العرض، الإطار، وهكذا ...

    الفرق بين عناصر الكتلة وعناصر السرد
    عناصر الكتلة
    عناصر الكتلة أو Block elements هي العناصر التي تأخذ كل المساحة في العرض وتبدأ وتنتهي بسطر جديد، أي أنها تأخذ الحيز الكامل في المكان الموضوعة فيه من ناحية العرض مثل <p> أو <div> وتبدأ بسطر جديد من العناصر السابقة لها وتجبر العناصر اللاحقة بالنزول إلى سطر جديد من دون الحاجة إلى وسم مثل <br> ليفصل بينهم.

    هذه العناصر يمكنها أن تحتوي عناصر كتلة أخرى أوعناصر سرد Inline elements، ويمكن التحكم بأبعادها من طول و عرض وهامش وحشو.

    عناصر السرد
    عناصر السرد أو Inline elements دائما ما تكون متحاذية بين بعضها البعض حتى تكون على نفس السطر مع النص، مثال <a> أو <span> حيث أنها لا تخرج عن النص أو المكان الموضوعة فيه. ولا يمكن التحكم بأبعاد هذه العناصر سواء من ناحية العرض أو الطول لأنها تأخذ أبعاد النص التي تحتويه.

    يمكن لعناصر السرد أن تحتوي على عناصر سرد أخرى لكنها لا يمكن أن تحتوي على عناصر كتلة.

    "الهدية"
    الآن وبعدما عرفت الفرق بين عناصر HTML المختلفة ننتقل إلى الخصائص الأساسية لنموذج الصندوق والتي يمكنك من خلالها التحكم في موضع وشكل كل عنصر من عناصر HTML، سأحاول أن أشرح هذه الخصائص بمثال بسيط، تخيل أنك اشتريت هدية لمن تحب، ألا تريد أن تقدمها في أحلى صورة؟

    منع احتكاك الهدية بالعلبة
    خاصية padding تهتم بحشو الفراغ بحشو شفاف بين المحتوى والإطار الخارجي للصندوق بسمك محدد بحيث يبتعد المحتوى عن الإطار. ولخاصية padding أربع جهات، فوق، يمين، يسار، وتحت، وهناك طرق مختلفة لكتابة هذه الخاصية في CSS، فمن الممكن كتابة كل على حدى، أو كتابتهم باختصار:
    كود:
    .box-model {
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
    padding-left: 20px;
    }


    الطريقة المختصرة هي كتابة الجهات في سطر واحد بالترتيب التالي: فوق 10px، يمين 20px، تحت 10px، يسار 20px، وللتوضيح أكثر سيكون كتابة المثال السابق كالتالي:
    كود:
    .box-model {
    padding: 10px 20px 10px 20px;
    }


    وهناك أيضا طريقة مختصرة أكثر وهي أن تختصر الأربع جهات في جهتين، ويكون كتابة الطريقة: فوق تحت 10px، يمين يسار 20px، كتابة نفس المثال بهذه الطريقة:
    كود:
    .box-model {
    padding: 10px 20px;
    }


    طريقة الكسالى، اكتب قيمة واحدة ودع الباقي على المتصفح، حيث أن هذه القيمة تحدد جميع الاتجاهات:
    كود:
    .box-model {
    /* top = 10px, right = 10px, bottom = 10px, and left = 10px */
    padding: 10px;
    }


    اختر العلبة جيدا
    background-color و background-image يهتمان بلون وصورة الخلفية للصندوق، ويمكنك استخدام هاتين الخاصيتين معا، بحيث يكون لون الخلفية خلف الصورة.
    كود:
    .box-model {
    background-color: #000;
    background-image: url(images/bg.png);
    }


    الهدية في العلبة
    الآن وبعدما انتهينا من حشو المحتوى وإبعاده عن إطار الصندوق، واخترنا لون وصورة للخلفية، تبقى أن نضع اللمسة الأخيرة وهي border أو الإطار للصندوق، حيث أن تطبيق الإطار يكون خارج الحشوة.
    كود:
    .box-model {
    border: 3px solid #000;
    }


    ضعها في مساحة واسعة
    أصبح المحتوى جاهزا للتقديم، وتبقى فقط أن نضعه في مساحة واسعة باستخدام margin أو الهامش، حيث تتيح لك هذه الخاصية إبعاد الصندوق كاملا في كل الجهات. وطريقة الكتابة تشبه طريقة كتابة الحشو padding مع اختلاف بسيط وهو السماح بأخذ قيم سالبة negative values.
    كود:
    .box-model {
    margin: 8px 12px 7px 5px;
    }


    تقديم الهدية
    مبروك، لقد انتهيت من الهدية ولم يتبقى سوى أن تتمنى أن تعجب هذه الهدية صاحبها، والا فسوف تخرج الهدية عن إطارها ومكانها ومن الممكن جدا أن تنتهي مرمية على نهاية الشارع.

    أسوأ الاحتمالات ...
    هناك احتمال قائم كما ذكرت في النقطة السابقة أن "الهدية" أو الصندوق لن يظهر بالصورة المطلوبة في بعض المتصفحات لعدم التزامهم بالمعايير الصحيحة، وللتحديد أكثر، متصفح الانترنت اكسبلورر 6 وأقل، والموضوع في هذا المجال قد يحتاج إلى مقال آخر ولكن ببساطة لاستخدام نموذج الصندوق بالشكل الصحيح على الانترنت اكسبلورر 6 عليك بالتعريف الصحيح لنوع المستند أو ما يسمى Document Type Definition في أعلى الصفحة ولكن للأسف انترنت اكسبلورر أقل من 6 سيعرض الصندوق بشكل خاطئ.

    ---------------------------------------

    المصدر:
    [المشروع - مجتمع مطوري المواقع]
    للكاتب: عبدالرحمن العتيبة






    __________________
    مدونة المبدع العربي


  2. #2


    مقال ممتاز جداً وسرد مميز خاصةً من بعد الهدية
    تحيـاتي لك ولكاتب المقال الأخ عبدالرحمن العتيبة





    __________________
    كذب من قال الدنيا هي نفسها الدنيا بعيني من بعدك ياأبو محمد
    ﴿ كُلُّ نَفْسٍ ذَآئِقَةُ الْمَوْتِ ... ﴾ رحمة الله عليك
    *عدم ردي على بعض الرسائل لايعني تجاهلي لها



  3. قرأته سريعاً
    درس ممتاز .. لى عودة بأذن الله لنقد مفصل






  4. #4
    عضو فعال جدا
    تاريخ التسجيل
    Nov 2003
    المشاركات
    2,439


    اسمك يحتوي معناك





    __________________
    سئل أحد الحكماء : أي عز يكون بالذل متصلاً ، فقال العز في خدمة السلطان

    -
    محب الله ورسوله
    شخص احببته فالله واحترمه واتمتع بمشاهدة مشاركاته , كذلك أنصحك إنت بعد تبحث عن مشاركاته ..

  5. #5
    عضو فعال
    تاريخ التسجيل
    Nov 2005
    المشاركات
    1,765


    إبداع .. مميز ..
    الله يعطيك على قد نيتك !
    والله يزيدك علم يارب !

    بالتوفيق,

    أطيب تحية .





    __________________
    افضل مافي الايام الماضية انها مضت

  6. #6
    عضو نشيط جدا
    تاريخ التسجيل
    Jan 2007
    المشاركات
    561


    رائع جدا رائع

    وشكر لك

    تحياتي






  7. #7
    عضو نشيط جدا
    تاريخ التسجيل
    Sep 2006
    المشاركات
    443


    والله رغم اني من عشاق هذه اللغة

    إلى إني اجد صعوبة في فهمها بشكل كبير

    ولكن سأحاول بإذن الله تعالى أدرب نفسي عليها

    وشكرا لك على الموضوع المميز





    __________________
    عاشق التصميم

    لخدمات التصميم والتطوير والبرمجة

    www.3asheq.net

    الأميل الرسمي

    design@3asheq.net

    ( لا خير في كاتم العلم )



  8. شرح مميز ـ جزاك الله كل الخير
    والشكر موصول للأخ عبدالرحمن العتيب بارك الله فيه

    ولو اني أكنت أفضل أن يهتم أكثر بوضع أمثلة مصورة لكل حالة بعيداً عن الهدية فالصورة التى وضعتها أول الموضوع غير حقيقة ولا توضح المقصود بشكل جيد
    وأظن أن التعبير عنها بشكل طبقات هكذا غير صحيح.

    أيضا ومع أنك أهتميت بشرح خصائص وطرق كتابة الوظائف padding ,margin بشكل جيد
    الا أنك لم تعطي نفس الإهتمام للحدود border وخصائها وأشكالها المختلفة مع انه من أهم العوامل المؤثرة على شكل الصندوق..

    تقبل التحيه ،،





    __________________
    كتوم في المصنع {...}

  9. #9
    عبدالعزيز الزرعوني
    تاريخ التسجيل
    Feb 2004
    المشاركات
    3,128


    شكراً للجميع على ردودهم..


    الأخ ca2oom..
    بالنسبة لي أرى الشرح واضح ولا أرى من حاجة لتدعيم كل جزء بالصور لأن التطبيق سيعطي النتيجة المطلوبة..
    والمثال في الأعلى أراه موفّق، وهو بطبقاته هذه أراد تقسيم الصندوق وإيضاح شكل كل جزء.. وأرى انه أيضاً كان موفقاً بترتيب الطبقات

    هذا برأيي وإن أردت رأي صاحب المقال يمكنك الرد في المقال نفسه:
    http://www.almashroo.com/articles/%d...%81%d9%8a_css/





    __________________
    مدونة المبدع العربي

  10. #10
    عضو نشيط جدا
    تاريخ التسجيل
    Aug 2007
    المشاركات
    397


    بصراحة موضوع جيد
    خصوصا شرح ال padding
    مشكور على المعلومات المفيدة

    وعلى موقع المشروع الذى لفت انتباهى الية بصراحة به العديد من المقالات الجيدة

    جزاك الله خيرا





    __________________
    * لا يوجد جديد *

  11. #11
    عضو فعال جدا
    تاريخ التسجيل
    May 2007
    المشاركات
    2,455


    هذا موقعي يستخدم css بشكل مميز ونرجو تقييمك له والحمد لله انتهيت منه من فتره بسيطه

    www.maydeen.net/arab

    لكن هل هناك اقتراحات او اخطاء فيه للمهتمين بلغة css








  12. السلام عليكم ورحمة الله وبركاته ..

    موضوع مميز ويستحق التثبيت ..

    اخي قرأت في مقالك بان DIV و P يأخذان سطر من المحتوى دون الحاجة الى كتابة BR وان SPAN و A يطبقون على المحتوى فقط ..

    فهل استطيع وضع SPAN داخل DIV ? لأنك ذكرت ان العكس لا تستطيع عمله .

    وهل يمكنني وضع صورتين في خلفية الصورة ؟ كمثال :: صورة يمين وصورة يسار ..

    بالتوفيق ان شاء الله





    __________________
    ownersınnı
    ALdiraZi BLoOoG | Contact Me | lt.tl - shorten your URL

  13. #13
    عبدالعزيز الزرعوني
    تاريخ التسجيل
    Feb 2004
    المشاركات
    3,128


    ميادين..
    رائع بصراحة.. موقعك مرتب..
    لكن انظر إلى رابط valid css في نهاية موقعك.. هناك أخطاء.. ولم أنظر إلى الكود ولكن بنظرة عامة لدي ملاحظتين..

    الكلام الموجود أسفل هذه الصورة:
    http://www.maydeen.net/arab/elan/ehtraf.gif
    أرى أن تغمّق اللون الأخضر فيها أكثر.. أقصد اللون الأخضر الذي يظهر عندما تمرر الماوس على الروابط.. الـactive .. لأن القصد من تغيير اللون هو توضيح الرابط أكثر لكن اللون الأخضر هنا خلفه خلفية زرقاء خفيفة فلا يظهر بشكل جيد.. أرى أن تجعله غامقاً أكثر

    النقطة الثانية في تسجيل الدخول والاستفتاء..
    إذا أتينا بالماوس عليه يتغير لون كل الكلام فيه إلى اللون الأخضر..
    أرى أن هذا يسبب بعض التشتيت وعدم التركيز على شيء معين

    والله أعلم





    __________________
    مدونة المبدع العربي

  14. #14
    عبدالعزيز الزرعوني
    تاريخ التسجيل
    Feb 2004
    المشاركات
    3,128


    owner ..
    ليس مقالي بل مقال الأخ عبدالرحمن العتيبة..

    نعم.. Span و a وأمثالهم.. هم من الـinline elements .. أي يمكن وضعها داخل الـdiv
    كما هو في الـ<font> سابقاً.. لأن هذه الـTags إذا وضعتها في سطر فلن يتم إنشاء سطر فارغ فوقها وتحتها كما يحدث في الـ<p> والـ<div> والـ<h1>

    النقطة الأخرى..
    وضع صورتين في خلفية الصورة؟
    لعلك تقصد وضع صورتين في خلفية الصندوق..
    إذا كنت تقصد وضع صورتين كخلفية في div واحد.. فلا أظن ذلك ممكناً.. هذا حسب علمي
    لكن أنصحك بسؤال كاتب المقال فهو أكثر خبرة مني في هذا:
    http://www.almashroo.com/articles/%d...%81%d9%8a_css/

    لكن يمكنك إنشاء صندوقين Div ووضعهم بجانب بعضهما البعض باستخدام float.. ووضع صورتين فيهما كخلفية





    __________________
    مدونة المبدع العربي





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض