أولا أهنئكم بقدوم شهر رمضان المبارك ، الله يوفقنا وإياكم لصيامة وقيامه ..
بسم الله الرحمن الرحيم ، يمكنك باستخدام أنماط الCSS صناعة واجهة موقعك وتجزئتها حسب ماتريد دون استخدام الطريقة الكلاسيكة (الجداول). وفوق هذا كله سرعه تحميل الصفحة. ولمعرفة المزيد حول : لماذا واجهة الCSS أفضل من استخدام الجداول ؟ واختصرها في عملية قراءة الجدول بطيئة ، انعدام المرونه في الجداول ، سهوله التحكم بمظهر الواجه أسهل في الCSS ، الجداول من الصعب بناءها للتوافق مع عدة أحجام للشاشات و من مزايا الCSS هو استخدام أكثر من نمط لعدة أغراض فعند طباعه الصفحة تستطيع استخدام نمط خاص للطباعة وهكذا.
الواجهة التي سنحاول شرح طريقة عملها هي على هذا الشكل :
ستحصل على نتيجة جيدة لكن حدود العنصر الرئيسي ظاهره على نهاية الصفحة وهذا بسبب ان العنصر رئيسي أخذ عرض كامل للمكان المتواجد فيه ، والحل بإضافة هامش أيمن وأيسر
المشكلة الاخرى هي عند تصفحك الواجهة بالانترنت إكسبلورر ستلاحظ "الجزء الأيمن" مكانها اعلى بقليل من "المحتوى الرئيسي" والحل هنا إضافة display:inline-block; للعنصر الرئيسي
حسناً هل انتهينا ؟
لا لم ننتهي بعد بقي أن نذكر بعض المشاكل التي قد تواجهك ، ضع محتوى تجريبي للعنصر الايمن وليكن هكذا :
كود:
<div id="right">
<h1>الجزء الأيمن</h1>
الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ،
الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ،
الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ، الجزء الأيمن ،
</div>
ستلاحظ ذيل الصفحة لايتأثر بالمحتوى الذي أدخلته وينزل الى أسفل وحل ذلك بجعله يلغي أي عنصر يأتي بجانبه .
الان أدخل محتوى تجريبي بداخل المحتوى الرئيسي وليكن هكذا :
كود:
<div id="center">
<h1>المحتوى الرئيسي</h1>
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
</div>
من المفترض ان هذه العناصر تعمل بشكل جيد لكن بحكم المحاذاة الحاصلة من العنصر الأيمن والأيسر فان الfloat داخل العنصر center لن يعمل بشكل جيد ولابد من وضع هذه العناصر في عنصر له خاصية overflow:hidden; display:inline-block
يكون الكود بالشكل النهائي:
كود:
<div id="center">
<h1>المحتوى الرئيسي</h1>
<div style="overflow:hidden; display:inline-block">
<div style="float:left; color:red">جملة ملاصقة للجانب الايسر</div>
<div style="float:right; color:blue">جملة ملاصقة للجانب الايمن</div>
<div style="float:right; color:#993399; clear:both;">جملة فاصلة بينهم</div>
</div>
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي , المحتوى الرئيسي ,
</div>
أهلا بكم جميعا وتقبل الله صيامكم وقيامكم.. بارك الله فيكم..
بالنسبة لك اخي "هكرز المنتديات"
Div ماخوذة من الكلمة division وتعني قسم او جزء
اما استخدامها فهي تستخدم للبيانات التي لايوجد لها وسم محدد مثل وسم الtable محدد لتصميم جدول معين وسم a محدد للروابط والوسم b محدد للنمط العريض وهكذا ... اما الdiv لايوجد لها بيانات محددة او اشياء عادة تعرض داخلها فهي تقبل اي شئ ، بالاضافة انها لايوجد فيها اعدادات افتراضيه مثل الهوامش في p .. بالاضافه انها تعرض ك block element "تاخذ سطر كامل" ونفس الشئ في الوسم span الا انه inline element "تقبل عناصر اخرى في نفس السطر" ويمكنك تعديل مظهرها كماتشاء فهي كما ذكرت لك لاتحتوي على اعدادات افتراضيه مثل الP او h1 .
الCSS نستخدمها ولكن نجهل الكثير عنها خاصة بما يتعلق بتقسيم وترتيب الصفحة.
تسائلات :
× لدي بلوك ايمن واريد ان اضع في داخله DIV واريد هذا الDIV يتمركز في اعلى هذا البلوك.
× DIV بعرض 400px واريد ان اجعل في الطرف الايمن نص وفي الطرف الايسر نص اخر بدون ما اقسم الDIV.
× كيف اتحكم بمكان النص داخل الDIV.
× لدي بلوكين بالDIV بجانب بعض واريد ان اجعل بنهم فاصل "مثلاً 2px".
ارجو اني ما اكون ثقلت
__________________
أنشئ البوم لصورك وشاركها في موقعك صور TNT
الCSS نستخدمها ولكن نجهل الكثير عنها خاصة بما يتعلق بتقسيم وترتيب الصفحة.
العفو اهلا بك...
إقتباس:
تسائلات :
× لدي بلوك ايمن واريد ان اضع في داخله DIV واريد هذا الDIV يتمركز في اعلى هذا البلوك.
لم افهم معنى "يتمركز في الاعلى" ؟ ..عندما تضع :
كود:
<div class="block">
<div class="top">
TOP
</div>
.........
</div>
ستظهر TOP في الاعلى .. لكن ربما تقصد ان هناك حشو زائد من الاعلى (padding) وتريد الDIV يرتفع
عندها تستطبع اعطاءه هامش(margin) بالسالب حتى يرتفع.
margin-top:-4px;
إقتباس:
× DIV بعرض 400px واريد ان اجعل في الطرف الايمن نص وفي الطرف الايسر نص اخر بدون ما اقسم الDIV.
اممم..
ممكن تقصد كذا
كود:
<div class="d400">
<div class="l">left left left left left left left left left left left left left </div>
<div class="r">right right right right right right right right right right </div>
</div>
عن طريق :
text-align : left/right/center *** يتحكم بالنص فقط ولايؤثر على العنصر الحاوي للنص
float : right / left *** يعمل ازاحه كامله للعنصر
position : *** // نفس الشئ يتحكم بالعنصر كامل // وله موضوع مستقل هنا للاخ الفاضل ca2oom
إقتباس:
× لدي بلوكين بالDIV بجانب بعض واريد ان اجعل بنهم فاصل "مثلاً 2px".
ارجو اني ما اكون ثقلت
عن طريق الmargin يمكنك ذلك العنصر الايمن اعطه margin-left:1px و الايسر margin-right:1px .
جزاك الله خير الجزاء
صراحة استفدت من درسك كثير
عملت تجربة في المرفقات لكن واجهتني مشاكل
منها :
1- توسيط الصفحة
2- تلاحظ أن في الجزء الأيمن من التصميم رؤوس الجداول في أطرافها تقويس لكن المشكلة أن الجدول يكمل الخط فيكون شكله مشوه شنو الحل فيها .؟
3- تلاحظ أن في الجزء الأيمن والأيسر والوسك فرقنا بيهما بخط لكن امشكلة عندما كثرت الجداول ونزلت للأسفل اختفى الخط ما السبب .؟
aldosare شغلك حلو.. لكن عندك لخبطة شوي
- اذا بغيت تستخدم وصف css لاكثر من عنصر استخدم class وليس الid
وفي الcss # >>> .
- اذا استخدمت الpx لاتخلط معها الem واستمر على واحد منهم فقط.
- ماوضعته انا ليس شرطا ان يكون موجود مثل الpadding والmargin والborder في الخطوة الثالثة لاني اشوفك قعدت تعدل فيها وحطيت شئ سالب على شانها.
- وضعت انت لل body عرض محدد وهذا خطأ لان حتى الان ليس اغلب المتصفحات تدعم هذه الطريقة والصحيح ان تجعل العرض لل wrap .. وتضع margin:auto
- مشكلة الحد اللي داخل على القائمة هذا شئ طبيعي لان الحد يكون خارج العنصر فمهما سويت من خلفيه ماراح تغطي الحد .. والحل انك تجعل الحد لعنصر اسفل من عنوان القائمة .
- مشكلة الخطوط انها حدود للعنصر center والذي يفترض ان يكون اطول واحد بينهم (الايمن والايسر)
لكن هناك حل افضل مادام انك وضعت عرض ثابت لل wrap ان تصنع خلفيه بنفس عرض الwrap فيها الخطوط بامكانك الاطلاع على الملف المرفق ففيه تعديلات كثيرة .. ايضا لاتهمل شكل الواجهة في المتصفحات الاخرى.
أسأل الله العلي العظيم أن يوفقك في كل دروبك
وأن يفتح لك أبواب رزقه
صراحة أفدتني
خاصة تعليقاتك في الملف
بارك الله فيك
وياليت يكون هنالك دروس أكثر عمقا في css
مثل التعامل مع زرائر الهافر - وكذلك القوائم المنسدلة وغيرها من أوامر تضفي جمالا للموقع
وأنا أول التلاميذ المتابعين لدروسك
امين واياك اخي الحبيب...
بالنسبة للدروس فلست اهلا لذلك هذا مجرد محاولة بسيطة لنقل شئ تعلمته لكم.
وان شاء الله هناك المزيد.... لعل وعسى ان اجد موضوعا مناسبا للطرفين للملقي والمتلقين الكرام..