استایل لیستها
استایلدهی به لیستهای نامرتب، مرتب و تعریفی در CSS: bullet، شمارهگذاری، رنگ و چیدمان
استایل لیست در CSS
لیستها (<ul>، <ol>، <dl>) از پایههای طراحی وب هستند. CSS کنترل کاملی روی ظاهر آنها ارائه میدهد.
ویژگیهای اصلی لیست
| ویژگی | توضیح | مثال |
|---|---|---|
list-style-type | نوع نشانه (bullet) | disc |
list-style-position | موقعیت نشانه | inside |
list-style-image | تصویر سفارشی | url("star.png") |
list-style | خلاصه همه | square inside |
۱. نوع نشانه (list-style-type)
| مقدار | توضیح |
|---|---|
disc | دایره توپر (پیشفرض ul) |
circle | دایره توخالی |
square</td><td>مربع</td></tr>
<tr><td><code>decimal | ۱، ۲، ۳... (پیشفرض ol) |
decimal-leading-zero | ۰۱، ۰۲، ۰۳... |
lower-alpha | a، b، c... |
upper-alpha | A، B، C... |
lower-roman | i، ii، iii... |
upper-roman | I، II، III... |
none | بدون نشانه ⭐ |
۲. موقعیت نشانه (list-style-position)
| مقدار عادی | موقعیت عادی | موقعیت داخلی |
|---|---|---|
| Position | outside (پیشفرض) | inside |
| توضیح | نشانه بیرون از متن | نشانه داخل متن |
/* بیرون — نشانه بیرون محتوای li */
ul { list-style-position: outside; }
/* داخل — نشانه داخل li */
ul { list-style-position: inside; }
۳. تصویر بهعنوان نشانه
ul {
list-style-image: url("checkmark.png");
}
/* یا با شبهعنصر — کنترل بیشتر */
ul.custom {
list-style: none;
}
ul.custom li::before {
content: "✓";
color: #2ecc71;
margin-left: 10px;
font-weight: bold;
}
۴. شمارندههای سفارشی
ol {
counter-reset: my-counter;
list-style: none;
}
ol li::before {
counter-increment: my-counter;
content: counter(my-counter);
background: #3498db;
color: white;
width: 30px;
height: 30px;
border-radius: 50%;
display: inline-flex;
align-items: center;
justify-content: center;
margin-left: 10px;
}
۵. حذف استایل پیشفرض
/* حذف کامل استایل لیست */
.reset-list {
list-style: none;
margin: 0;
padding: 0;
}
منوی افقی با لیست
ul.menu {
list-style: none;
display: flex;
gap: 20px;
}
ul.menu li {
padding: 10px;
border-radius: 6px;
transition: background 0.3s;
}
ul.menu li:hover {
background: #3498db;
color: white;
}
بهترین شیوهها
- برای منوها و ناوبری
list-style: noneاستفاده کنید - از شبهعنصر
::beforeبرای نشانههای سفارشی استفاده کنید - برای لیستهای ناوبری از
flexboxیاgridاستفاده کنید - برای شمارهگذاری فارسی، از
@counter-styleیاpersianاستفاده کنید - نشانههای سفارشی رنگی و جذاب بسازید
نکات مهم
- برای فارسی،
list-style-type: persianاستفاده کنید list-style-imageکنترل کمتری نسبت به::beforeداردlist-style-position: insideفاصلهها را متفاوت میکند- در منوها و ناوبری، همیشه
list-style: noneبزنید - از شمارندههای CSS برای شمارهگذاری پیشرفته استفاده کنید
این مبحث بخشی از دوره آموزش کامل CSS است.