لیستهای تو در تو (Nested Lists)

لیستهای تو در تو (Nested Lists)
لیستهای تو در تو (Nested Lists): نظم در عمق! 🌳⬆️
سلام دوستان خوشسلیقه! تا اینجا یاد گرفتیم که چطور با <ul>، <ol>، و <dl> لیستهای ساده بسازیم. اما دنیای لیستها گاهی پیچیدهتر و عمیقتر میشه! وقتی یه آیتم لیست خودش شامل چند زیرمجموعه یا اطلاعات جزئیتره، نیاز به “لیستهای تو در تو” پیدا میکنیم.
لیستهای تو در تو مثل شاخههای درختی هستن که از یه تنه اصلی منشعب میشن و به ما کمک میکنن اطلاعات رو با سطوح مختلف جزئیات سازماندهی کنیم.
چطور لیست تو در تو بسازیم؟ 🤔
خیلی ساده! کافیه که به جای قرار دادن متن مستقیم داخل یه تگ <li>، یه تگ لیست دیگه (<ul>، <ol> یا حتی <dl>) رو درون اون <li> قرار بدید.
نکته کلیدی: لیست داخلی (لیستی که داخل <li> قرار میگیره) باید خودش شامل تگهای آیتم لیست خودش (<li>) باشه.
مثال ۱: لیست علاقهمندیها با دستهبندی (استفاده از ul تو در تو) 📚
فرض کنید میخوایم لیستی از کتابها درست کنیم و اونها رو بر اساس ژانر دستهبندی کنیم:
<h2>کتابهای مورد علاقه من:</h2>
<ul> <!-- لیست اصلی -->
<li>رمان:</li>
<ul> <!-- لیست تو در تو برای ژانر رمان -->
<li>صد سال تنهایی ✒️</li>
<li>جنگ و صلح 📖</li>
</ul>
<li>علمی تخیلی:</li>
<ul> <!-- لیست تو در تو برای ژانر علمی تخیلی -->
<li>مریخی 👽</li>
<li>بنیاد 🚀</li>
</ul>
<li>فانتزی:</li>
<ul>
<li>ارباب حلقهها 💍</li>
</ul>
</ul>
نتیجه:
- رمان:
- صد سال تنهایی ✒️
- جنگ و صلح 📖
- علمی تخیلی:
- مریخی 👽
- بنیاد 🚀
- فانتزی:
- ارباب حلقهها 💍
مثال ۲: مراحل با زیرمراحل (استفاده از ol تو در تو) ⚙️
فرض کنید میخوایم مراحل آمادهسازی یک پروژه رو مشخص کنیم که هر مرحله خودش شامل چند قدم باشه:
<h2>مراحل انجام پروژه:</h2>
<ol> <!-- لیست اصلی -->
<li>فاز برنامهریزی:</li>
<ol type="a"> <!-- لیست تو در تو با حروف لاتین -->
<li>تعیین اهداف</li>
<li>جمعآوری نیازمندیها</li>
<li>تهیه طرح اولیه</li>
</ol>
<li>فاز اجرا:</li>
<ol type="a">
<li>توسعه کد</li>
<li>آزمایش و رفع اشکال</li>
</ol>
<li>فاز مستندسازی:</li>
<ol type="a">
<li>نوشتن راهنمای کاربر</li>
<li>تهیه مستندات فنی</li>
</ol>
</ol>
نتیجه:
- فاز برنامهریزی:
- تعیین اهداف
- جمعآوری نیازمندیها
- تهیه طرح اولیه
- فاز اجرا:
- توسعه کد
- آزمایش و رفع اشکال
- فاز مستندسازی:
- نوشتن راهنمای کاربر
- تهیه مستندات فنی
ترکیب انواع لیستها! 🤯
شما حتی میتونید انواع لیستها رو با هم ترکیب کنید! مثلاً یه لیست نامرتب که داخلش یه لیست مرتب داره، یا برعکس!
<h2>برنامههای روزانه:</h2>
<ul>
<li>صبح:</li>
<ol>
<li>بیدار شدن</li>
<li>صبحانه خوردن 🍳</li>
</ol>
<li>ظهر:</li>
<ol>
<li>ناهار</li>
<li>استراحت کوتاه</li>
</ol>
<li>شب: استراحت و تفریح 🌙</li>
</ul>
وقتی لیستهای تو در تو رو استفاده میکنید، مرورگرها به طور پیشفرض ظاهر نشانهها (bullets و numbers) رو تغییر میدن تا سطوح مختلف لیست مشخص بشه. با CSS میتونید این ظاهر رو کنترل کنید و زیباتر هم بکنید!
لیستهای تو در تو یه ابزار قدرتمند برای سازماندهی اطلاعات پیچیده هستن. با استفاده درست از اونها، میتونید محتوایی بسازید که هم برای کاربرها خیلی خوانا و قابل فهم باشه و هم ساختار منظمی داشته باشه. پس از این قابلیت خلاقانه استفاده کنید! ✨
مقالات مرتبط
آخرین مقالات
کدهای تمیز: با متغیرها، CSS را هوشمند کنید! 💡
متغیرهای CSS (Custom Properties): کد تمیزتر، مدیریت راحتتر! 🎨 سلام به همگی! توی پروژههای CSS، خیلی وقتا پیش میاد که یه رنگ، یه فونت، یا یه فاصله رو بارها و بارها توی جاهای مختلف استفاده میکنیم. مثلاً رنگ اصلی سایتمون...
ساخت انیمیشنهای حرفهای با @keyframes (گام به گام)
CSS Animations: خلق انیمیشنهای پیچیده با @keyframes! 🎬 سلام به همگی! تا الان با Transitionها آشنا شدیم که تغییرات بین دو حالت رو نرم میکنن. اما اگه بخوایم انیمیشنهای پیچیدهتر، چند مرحلهای، یا حتی انیمیشنهایی که مدام تکرار میشن رو...
دگرگونی سایت با CSS: چرخش، تغییر اندازه و جابجایی
CSS Transforms: جابجایی، چرخش، تغییر اندازه و کج کردن عناصر! 🤸♀️ سلام دوستان! تا اینجا با انیمیشنهای نرم و پیوسته (Transitions) آشنا شدیم. اما گاهی وقتها نیاز داریم که عناصر HTML رو جابجا کنیم، بچرخونیم، اندازهشون رو عوض کنیم یا...
انتقالهای نرم: عناصر خود را متحرک کنید!
CSS Transitions: جادوی حرکت نرم و روان! ✨ سلام به همه! تا حالا شده یه سایت رو ببینید که با هاور کردن روی یه دکمه، رنگش نرم و قشنگ عوض میشه؟ یا با تغییر اندازه یه عنصر، انیمیشن ظریفی رو...