CSS: تغيير تنسيق كل قائمة على حده
السلام عليكم
قد يرغب بعض منا بتغيير تنسيق كل قائمة Widget لوحدها مما يميزها عن غيرها والتحكم في تنسيق كل قائمه لوحدها << بمعنى أن القائمة 1 تحمل لون الخلفية ازرق , والقائمه 2 تحمل لون الخلفية أخضر >> وهكذا,,,
سأقوم بأذن الله بالتطبيق على لون الخلفية لكل قائمه.
أولاً: نبدأ بكتابة وسوم الـ HTML :
<body> <div id="sidebar"><!--بداية وسم السايدبار--> <div class="widget gray"> <h2>التصنيفات</h2> <ul> <li><a href="#">تصنيف 1</a></li> <li><a href="#">تصنيف 2</a></li> <li><a href="#">تصنيف 3</a></li> <li><a href="#">تصنيف 4</a></li> <li><a href="#">تصنيف 5</a></li> </ul> </div> <div class="widget green"> <h2>روابط</h2> <ul> <li><a href="#">رابط 1</a></li> <li><a href="#">رابط 2</a></li> <li><a href="#">رابط 3</a></li> <li><a href="#">رابط 4</a></li> <li><a href="#">رابط 5</a></li> </ul> </div> <div class="widget red"> <h2>اخرى</h2> <ul> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> </ul> </div> </div><!--تسكيرة وسم السايدبار--> </body>
ملاحظة: نكتب وسوم الـ HTML داخل وسم body:
<body>...هنا تكتب وسوم الـ HTML....</body>
والتنسيق بـ CSS :
#sidebar {
width:300px;
background:#333366;
border:1px solid #000;
margin:auto;
padding:8px;
float:right;
}
.widget {
border:1px solid #000;
padding:4px;
margin:5px;
text-align:right;
}
.widget h2 {
color:#fff;
border-bottom:2px solid #fff;
}
.widget ul {
}
.widget li {
font-family:tahoma;
font-size:13px;
color:#fff;
list-style:none;
}
.widget li a {
color:#fff;
text-decoration:none;
}
.widget li a:hover {
color:#000;
text-decoration:none;
}
.gray {/*تنسيق خاص لقائمة التصنيفات*/
background:gray;
}
.red {/*تنسيق خاص لقائمة روابط*/
background:red;
}
.green {/*تنسيق خاص لقائمة اخرى*/
background:green;
}
اعتقد أن الـ CSS واضحة ولا تحتاج الى شرح , لكن لنشرح الـ HTML
أولاً فتحنا وسم السايدبار وأغلقناه وكتبنا بداخله وسوم القائمه:
<div class="widget gray"> <h2>التصنيفات</h2> <ul> <li><a href="#">تصنيف 1</a></li> <li><a href="#">تصنيف 2</a></li> <li><a href="#">تصنيف 3</a></li> <li><a href="#">تصنيف 4</a></li> <li><a href="#">تصنيف 5</a></li> </ul> </div>
استخدمنا هنا معرفان للقائمه الأولى وهما widget gray تكتبان بجانب بعضهما وبينهم مسافه :
widget : هذا المعرف عام بتنسيق القائمه والهامش واتجاه النص , هو عام لكل القوائم
gray : هذا المعرف يخص هذه القائمه فقط وانما وضعناه لكي نخصص لهذه القائمه لون الخلفية رمادي .
<div class="widget green"> <h2>روابط</h2> <ul> <li><a href="#">رابط 1</a></li> <li><a href="#">رابط 2</a></li> <li><a href="#">رابط 3</a></li> <li><a href="#">رابط 4</a></li> <li><a href="#">رابط 5</a></li> </ul> </div>
widget : تم شرحه .
green : هذا المعرف خاص فقط لقائمة [روابط] وهي تحمل لون الخلفية أخضر.
<div class="widget red"> <h2>اخرى</h2> <ul> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> <li><a href="#">رابط نصي</a></li> </ul> </div>
widget : كما تم الشرح أعلاه.
red : هذا المعرف يخص هذه القائمه فقط [اخرى] وهو يحمل لون الخلفية أحمر.
ثانياً : التنسيق بـ CSS :
أقصد بها تنسيق الـمعرفات gray , green , red , ويتم تنسيق كلٍ على حده:
.gray {/*تنسيق خاص لقائمة التصنيفات*/
background:gray;
}
.red {/*تنسيق خاص لقائمة روابط*/
background:red;
}
.green {/*تنسيق خاص لقائمة اخرى*/
background:green;
}
حيثُ أن green يتم تنسيقها لوحدها وكذلك الـ red و gray يتم تنسيقهم لوحدهم.
وهكذا في بقية القوائم تستطيع تنسيق كل قائمه لوحدها
واتمنى ان يكون الشرح واضح لأني كتبته في عجلةٍ من أمري
وأي استفسار أو شيء غير مفهوم آمل أن يطرح في التعليقات
والسلام عليكم











كتب التعليق: إسماعيل | في: 28 أغسطس | الوقت: 11:12:13.
درس مميز .. أعجبني كثيرا.
بالتوفيق في قادم الدروس.
كتب التعليق: يوسف | في: 28 أغسطس | الوقت: 11:23:00.
حياك الله اخوي
المميز مرورك اخي
وفقك الله