امروز پنجشنبه ۱۴۰۰/۰۱/۲۶

2021/04/15 GMT +4:30

» کار با تگ های ایجاد کننده لیست در HTML

html-list

همانطور که پیش تر گفتیم، در HTML برای ایجاد هر خاصیتی از تگ های استاندارد و تعریف شده ی خاصی استفاده می شود که بنا بر نیاز سنجی، توسط کنسرسیوم جهانی وب (w3c) تعریف شده اند، یکی از این نیاز ها، امکان ایجاد مطالب و محتوا، به صورت لیست شده و زیرمجموعه ای است که w3c برای آن تگ های استاندارد ul li ol dl dd و dt را در نظر گرفته است، این تگ ها همه از یک خانواده هستند که برای ایجاد و مدیریت لیست در صفحات وب کاربرد دارند، از این رو در ادامه آموزش های مقدماتی HTML، این بار می خواهیم بپردازیم به مبحث کار با تگ های ایجاد کننده لیست در صفحات وب.

انواع لیست در HTML


قبل از پرداختن به ادامه آموزش، بد نیست اشاره ای هم داشته باشیم به انواع مختلف لیست در HTML.
لیست ها در وب تقریبا در دو دسته اصلی طبقه بندی می شوند، لیست های شماره ای (لیست هایی که در ابتدای آیتم های آن شماره قرار می گیرد و به صورت خودکار مرتب می شوند) که به آنها در اصطلاح ordered یا سفارشی و مرتب شده می گویند، و در مقابل لیست هایی که بدون شماره بوده و به جای آن، از علائم دیگر نظیر نقطه های مشکی تو پُُر یا تو خالی و... استفاده می شود، به این نوع لیست ها، unordered یا نامرتب می گویند که البته برخلاف نام آن، تفاوت عمده این دو لیست، تنها در شمار دار بودن یا نبودن آیتم های آنها است.

ایجاد لیست های مرتب شده با تگ ol و li


برای ایجاد لیست ها با آیتم های شماره بندی شده، از دو تگ ol و li استفاده می شود، تگ ol یک تگ کلیدی است و به مفسر مرورگر تفهیم می کند که منظور ما از لیست، لیستی با آیتم های شماره دار است، به مثال زیر توجه کنید.
<ol>
<li>آموزش</li>
<li>مقدماتی</li>
<li>تگ ها</li>
<li>html</li>
</ol>
برای دیدن پیش نمایش مثال ها، به انتهای این مطلب مراجعه کنید.
در حالت پیش فرض، مرورگر از اعداد برای مرتب سازی آیتم های لیست استفاده می کند (به فرض از شماره 1، 2، 3 ...)، اما اگر بخواهید نمایش عناوین آیتم ها را سفارشی کنید، می توانید از چند مقدار متفاوت برای خاصیت type تگ ol استفاده کنید، این مقادیر می تواند به صورت زیر باشد:
- لیست آیتم ها به صورت شماره ای (1، 2، 3 و...) با مقدار 1 برای type.
- لیست آیتم ها به صورت حروف کوچک (c، b، a و...) با مقدار a برای type.
- لیست آیتم ها به صورت حروف بزرگ (C، B، A و...) با مقدار A برای type.
- لیست آیتم ها به صورت شماره های رومی کوچک (iii، ii، i و...) با مقدار i برای type.
- لیست آیتم ها به صورت شماره های رومی بزرگ (III، II، I و...) با مقدار I برای type.
به مثال زیر توجه کنید.
<ol type="I">
<li>آموزش</li>
<li>مقدماتی</li>
<li>تگ ها</li>
<li>html</li>
</ol>

ایجاد لیست های بدون شماره با تگ ul و li


برای ایجاد لیست هایی با آیتم های فاقد شماره در صفحات وب، از تگ ul و li استفاده می شود، در اینجا ul تگ کلیدی است که به مرورگر می گوید آیتم های لیست را بدون شماره نشان دهد و از li نیز برای ایجاد آیتم ها استفاده می شود، به مثال زیر توجه کنید.
<ul>
<li>آموزش</li>
<li>مقدماتی</li>
<li>تگ ها</li>
<li>html</li>
</ul>
برای دیدن پیش نمایش مثال ها، به انتهای این مطلب مراجعه کنید.
در حالت پیش فرض، مرورگر برای نمایش آیتم های لیست، از یک علامت (معمولا نقطه های تو پُر) استفاده می کند، برای اینکه این رفتار مرورگر را کنترل کرده و نحوه نمایش آیتم های لیست را سفارشی کنیم، می توانیم همانند تگ ol از ویژگی type استفاده کنیم، با این تفاوت که در اینجا تنها سه مقدار زیر قابل تعیین است.
- ایجاد نقطه های تو خالی با مقدار circle برای type.
- ایجاد نقطه های تو پر با مقدار disc برای type.
- ایجاد نقطه های مربعی با مقدار square برای type.
به مثال زیر توجه کنید.
<ul type="square">
<li>آموزش</li>
<li>مقدماتی</li>
<li>تگ ها</li>
<li>html</li>
</ul>
خوشبختانه علاوه بر مقادیر و خاصیت های فوق، کنترل عناصر تگ های ul و li با css نیز کاملا مقدور است، علاوه بر این، css امکانات خیلی بیشتری برای سفارشی سازی لیست های وب در اختیارمان قرار می دهد که در آموزش های مقدماتی css و در مطلب زیر به طور مفصل در این رابطه گفته ایم:
نحوه تنظیم لیست با تگ ul li در css

ایجاد لیست های تو در تو با تگ ul و li


کاربرد لیست های وب به موارد ساده محدود نمی شود، بلکه با پیروی از اصول HTML می توان لیست هایی تو در تو یا به اصطلاح nested نیز ایجاد کرد، اینگونه لیست ها می توانند برای توصیف مواردی که به صورت زیر مجموعه ای و طبقه بندی شده هستند، مانند منوهای وب کاربرد داشته باشند، ساختار کلی یک منوی زیر مجموعه ای و تو در تو را می توانید در مثال زیر مشاهده کنید.
<ul>
<li>لیست اصلی بدون زیر مجموعه</li>
<li>
لیست اصلی با زیر مجموعه
<ul><li>لیست فرعی و زیر مجموعه اول
<ul><li>لیست فرعی و زیر مجموعه دوم</li></ul></li></ul>
</li>
</ul>

ساخت لیست های تعریف شده با تگ dl، dt و dd


در HTML می توان با استفاده از تگ های dl، dt و dd لیست هایی با قابلیت های توصیفی ایجاد نمود که می تواند کاربرد های خاص خود را داشته باشد، در این شیوه، تگ dl به عنوان تگ کلیدی، تگ dt برای ایجاد آیتم های لیست و تگ dd برای توصیف هر آیتم کاربرد دارد؛ به مثال زیر توجه کنید.
<dl>
<dt>آموزش</dt>
<dd>آموزش برنامه نویسی</dd>
<dt>مقدماتی</dt>
<dd>آموزش مقدماتی</dd>
<dt>تگ ها</dt>
<dd>آموزش تگ های html</dd>
<dt>html</dt>
<dd>آموزش html</dd>
</dl>

مثال و پیش نمایش آنلاین


در زیر کد و پیش نمایش آنلاین نحوه استفاده از تگ های ایجاد کننده لیست در صفحات وب را ملاحظه می کنید که می توانید از آن استفاده نمائید.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>وبگو | ایجاد لیست در صفحات وب</title>
<!-- https://webgoo.ir -->
<style type="text/css">
body{
    font-family:Tahoma, Geneva, sans-serif;
    font-size:12px;
    direction:rtl;
}
</style>
</head>
<body>
لیست های شماره ای:<br />
<!-- شروع یک لیست -->
<ol type="I">
<li>آموزش</li>
<li>مقدماتی</li>
<li>تگ ها</li>
<li>html</li>
</ol>
<!-- پایان یک لیست -->
<hr />

لیست های عادی:<br />
<!-- شروع یک لیست -->
<ul type="square">
<li>آموزش</li>
<li>مقدماتی</li>
<li>تگ ها</li>
<li>html</li>
</ul>
<!-- پایان یک لیست -->
<hr />

لیست های توصیفی:<br />
<!-- شروع یک لیست -->
<dl>
<dt>آموزش</dt>
<dd>آموزش برنامه نویسی</dd>
<dt>مقدماتی</dt>
<dd>آموزش مقدماتی</dd>
<dt>تگ ها</dt>
<dd>آموزش تگ های html</dd>
<dt>html</dt>
<dd>آموزش html</dd>
</dl>
<!-- پایان یک لیست -->
<hr />

لیست های تو در تو:<br />
<!-- شروع یک لیست -->
<ul>
<li>لیست اصلی بدون زیر مجموعه</li>
<li>
لیست اصلی با زیر مجموعه
<ul><li>لیست فرعی و زیر مجموعه اول
<ul><li>لیست فرعی و زیر مجموعه دوم</li></ul></li></ul>
</li>
</ul>
<!-- پایان یک لیست -->
</body>
</html>
پیش نمایش
دسته بندی: آموزش مقدماتی » HTML
related مطالب بیشتر:
» آشنایی با HTML، زبان پایه کدنویسی وب
» تگ های اصلی و کلیدی HTML
» آشنایی با مفهوم Semantic در HTML
» متاتگ ها (Meta Tags) و کاربرد آنها در صفحات وب (HTML)
» کاربرد تگ img و نمایش تصاویر در HTML
commentنظرات (۷ یادداشت برای این مطلب ارسال شده است)
more یادداشت های جدید بر اساس تاریخ ارسال در انتهای یادداشت های موجود نمایش داده می شوند.
نویسنده: امیر
۱۳:۳۸ ۱۳۹۱/۰۷/۱۰
سلام.
آیا میشه تگ های li رو لینک دار کرد یا حتما باید برای ایجاد لینک در لیست ها از تگ a استفاده کنیم.
پاسخ: 
سلام
تنها تگی که در html برای ایجاد لینک کاربرد دارد، تگ a href است، اما می توانید لینک خود را درون یک لیست ایجاد کنید که در واقع مثل این است که خود li لینک شده باشد، به طور مثال:
<li><a href="http://webgoo.ir">webgoo</a></li>
نویسنده: مرجان
۱۴:۴۴ ۱۳۹۲/۰۲/۲۳
وقتی بیش از یک جدول را ایجاد میکنم جدول ایجاد شده در وسط صفحه قرار می گیرد چکار کنم در طرف راست قرار گیرد
پاسخ: 
باید با CSS آشنا باشید و از خاصیت هایی مانند float و display با مقادیر inline-block استفاده کنید.
نویسنده: محمد حاجی
۲۰:۰۰ ۱۳۹۲/۰۸/۱۱
سلام. خسته نباشید. من یه پیشنهاد دارم (یه درخواست یعنی)
لطفا بعد از هر چند تا مطلب که میذارید یه تمرین بذارید که تمام مطالب قبلی توی اون باشه و ما سعی کنیم کد اون رو خودمون بنویسیم. من تمام مطالب رو تا این پست دونه به دونه و خط به خط دنبال کردم. ولی هر چی میام پایین تر کدهای قبلی یه جورایی فراموش میشن. اگه بعد از هر چند تا مطلب یه صفحه که با کدهای قبلی نوشته شده باشه رو به عنوان تمرین بذارید که ما خودمون مثل اون رو درست کنیم هم یه مرور میشه هم کدها تو ذهنمون میمونن . مرسی
پاسخ: 
سلام
ممنون از پیشنهاد شما، متاسفانه انجام این کار به دلیل محدودیت هایی میسر نیست، مطالب همواره در بخش مربوطه قرار دارند و می توانید برای تمرین حتی به صورت اجمالی نگاهی به آنها داشته باشید.
نویسنده: سهیلا
۰۹:۴۲ ۱۳۹۳/۰۳/۱۳
با سلام و خسته نباشید و بسیار سپاس از سایت و مطالب مفید آن در مبحث html چرا حرفی از frameset نکردید؟ و اگر میشه با کدهای این مبحث منو آشنا کنید. با تشکر
پاسخ: 
سلام
این تگ استاندار نیست و استفاده از این شیوه توصیه نمی شود، به هر صورت اطلاعاتی از آن در لینک زیر قابل دسترسی است:
http://www.w3schools.com/tags/tag_frameset.asp
نویسنده: میزبان فا
۰۲:۳۳ ۱۳۹۴/۰۷/۱۶
سلام
ممنون از آموزش خوبتون
میشه تگ های li رو رنگی کرد ؟ لطفا مثال بزنید
پاسخ: 
سلام
بله، با اختصاص display با مقادیر block یا inline-block و در نظر گرفتن width و height می توان محتوا یا پس زمینه تگ li را با استایل CSS تنظیم کرد!
نویسنده: شیرین
۱۲:۳۹ ۱۳۹۵/۰۴/۰۷
سلام خسته نباشید میخوام با استفاده از تیبل و ویژگی کول و رو اسپن گرید نامرتب بسازم. لینکی دارین کمکم کنه؟ اخه یه سری قسمت ها رو که باهم مرج میکنم مشکل پیش میاد و اصلا نمیتونم گریدی که میخوامو بسازم. [اگه لطف کنین توی وبلاگم یا ایمیلم جواب بدین خیلی ممنون میشم]
پاسخ: 
پیشنهاد ما این است که برای ترسیم جداول پیچیده از برنامه Word استفاده کنید، سپس فایلتان را با استفاده از یکی از سرویس های آنلاین تبدیل به HTML نمائید، برای اطلاع از این سرویس ها، تست و بررسی می توانید عبارت "word to html" را در وب جستجو نمائید.
نویسنده: سپید
۱۲:۳۲ ۱۳۹۷/۰۴/۳۰
سلام . راهی هست که بشه لیست ها رو به صورت جدولی نشون داد . هر لیست یک سطر از جدول باشه . ممنون از مطالب خوبتون
پاسخ: 
دقیقا هدفتان مشخص نیست، در کل می توانیم با CSS یا با درج خروجی در تگ های td جدول این کار را انجام دهیم، در هر صورت اگر یک نمونه معرفی کنید امکان راهنمایی بیشتر فراهم می شود.
more لطفا پیش از ارسال یادداشت نکات زیر را مد نظر داشته باشید:
- موارد غیرمرتبط با مباحث آموزش ها را در فرم منوی "تماس با ما" مطرح و پاسخ را از طریق ایمیل دریافت کنید.
- به سوالات کلی، مبهم و مشکلاتی که تلاشی برای رفع آن نکرده باشید پاسخ مختصر داده خواهد شد.
- کدها و اسکریپت های طولانی را ترجیحا در یک صفحه وب آنلاین قرار دهید تا امکان تست و بررسی وجود داشته باشد.
- از درج عناوین تبلیغاتی در فیلدها خودداری کنید، در صورتی که یادداشت تبلیغاتی تشخیص داده شود حذف خواهد شد.
- تمام یادداشت ها بررسی و زمانی جهت پاسخگویی در نظر گرفته می شود، لطفا از طرح سوالات متعدد خودداری کنید.





5 × 1
 refresh

آخرین دیدگاه ها
more برای دسترسی سریع به یادداشت مربوطه می توانید از لینک مطلب در کادر زیر استفاده کنید.
form شریفی
در:
سلام مجدد. من یه سوال خیلی تخصصی دارم. ممنون میشم پاسخ بدین. برای پروژه پایان نامه. دارم روی موتورهای جستجوگر تحقیق میکنم. فرض...
۱۴۰۰/۰۱/۲۵

form شریفی
در:
سلام استاد. من از متد file_get_contents استفاده می کنم برای دریافت اطلاعات از سایت های مختلف. بعضی وقتها سایت ها دیر لود میشه. آیا...
۱۴۰۰/۰۱/۲۵

form hh
در:
سلام خدمت شما بنده یه سوال داشتم تمام مراحل شما رو انجام دادم و نتیجه گرفتم و لازمه یه تشکرم بکنم. وبسایت من،...
۱۴۰۰/۰۱/۲۵

form erfan
در:
سلام من واسه یه دکمه یه محتوایی تعریف کردم که وقتی کلیک شد محتوا رو نشون بده اما تو دوجاش موندم یک اینکه چیکار کنم...
۱۴۰۰/۰۱/۲۱

form mahdi
در:
سلام استاد عزیز ، بازم معذرت میخوام سوالام زیاد شد ولی همشون در یک موضوع هستن ، تونستم که با این روش برای هر اسلایدر...
۱۴۰۰/۰۱/۱۸

form mahdi
در:
سلام استاد عزیز عذر میخوام بار سومه پیام میزارم ، مشکلش از ست اینترول بود که قطع نمیشد و با هم تداخل داشتند ولی بدون...
۱۴۰۰/۰۱/۱۸

form mahdi
در:
سلام وقت بخیر استاد عزیز ، یک تابع رو چطور میشه در جاوا اسکریپت اورراید کرد؟ که مثلا با هر فراخوانی مجدد ، قبلی ها...
۱۴۰۰/۰۱/۱۸

form متین
در:
سلام چجوری برای خود صفحه ادرس بسازیم که سایتی که رو ساختیم رو با دستگاه دیگه پیداش کنیم
۱۴۰۰/۰۱/۱۶

form امیرحسین برزویی
در:
من یک وبلاگ دارم و 9 سالمه من در وبلاگم مداحی می گذارم ولی وقتی قاب گذاشتم از این سایت من دیگه فیلم...
۱۴۰۰/۰۱/۱۶

form بنده خدا
در:
سلام خسته نباشین، خدا قوت. یه سوال دارم. چرا در بخش نظردهی وبلاگ به جای عنوان پست می نویسه مطلب مورد نظر یافت نشد؟!...
۱۴۰۰/۰۱/۱۵

form روح الله
در:
موقعی میخواهم وارد سایت ایران خودرو بشم پیام میده از Ip داخلی استفاده کنید دلیلش چیست
۱۴۰۰/۰۱/۱۴

form غریب
در:
تشکر از شما مشکلم حل شد امیدوارم موفق و پیروز باشید هر جا که هستید
۱۴۰۰/۰۱/۱۱

form غریب
در:
سلام مجدد ممنون و تشکر از کمکتون کد به خوبی کار میکنه اما همچنان من مشکلی دارم که حل نتونستم کنم...
۱۴۰۰/۰۱/۱۰

form غریب
در:
سلام مجدد این کدی که دادید خوب هست ولی من بد و ناقص توضیح دادم توجه کنید کد این هست تقریبا ممنون...
۱۴۰۰/۰۱/۱۰

form غریب
در:
سلام خسته نباشید من کدی دارم که میخوام داخل یه بخشیش نتیجه یه رویداد رو فراخوانی کنم و راهش و نمیدونم اگر میشه کمک...
۱۴۰۰/۰۱/۱۰

form محسن
در:
سلام ، سوال من مربوط به پنل کارگزاری هاست ، وقتی اسم یک سهم (نماد) را در قسمت جست و جو سرچ میکنم...
۱۴۰۰/۰۱/۰۸

form ترجمه
در:
باسلام همه صفحات من دارای دو url می باشد که یکی با حروف کوچک است و دیگری با حروف بزرگ چجوری این مشکل را...
۱۴۰۰/۰۱/۰۸

form سهیل ملکی
در:
سلام خسته نباشید ببخشید من میخوام از تابع navigator.online توی جاوا اسکریپت استفاده کنم تا باهاش بفهمم کاربر آنلاین هست یا نه و اگه بود...
۱۴۰۰/۰۱/۰۴

form Rabbiten
در:
سلام. من چند ماه است که دنبال کد استایل تصویر مثل تبلیغات بالای سایت شما هستم. اما هیچ جا پیدایش نمی کنم. لطف می...
۱۴۰۰/۰۱/۰۱

form mahdi
در:
سلام استاد عزیز سال نو رو تبریک میگم بهتون ، امیدوارم که خودتون و خانوادتون همیشه سالم و سلامت باشید و امسال پر از...
۱۳۹۹/۱۲/۳۰

form korosh abbasy
در:
سلام وقت بخیر ببخشید در مورد این مطلب سوالی پرسیدم شما در مورد output buffering توضیح دادید کد کار نمیکنه میخواستم ببینم نیازی هست من...
۱۳۹۹/۱۲/۲۹

form احمد
در:
سلام مجدد عذرخواهی میکنم یه موردی دیگه بود فراموش کردم در مورد سوال هدر بگم اینکه روی لوکال به هدر ارسال میشه ولی روی هاست...
۱۳۹۹/۱۲/۲۸

form احمد
در:
با سلام خسته نباشید ببخشید قبلا یه سری دستورات جی کوری رو از خودتون گرفتم وقتی فیلدهای فرمم تکمیل شده است توسط هدر بره به...
۱۳۹۹/۱۲/۲۸

form korosh abbasy
در:
سلام دم شما گرم این دستور برای خوندن فایل هم استفاده میشه؟ من میخوام دسترسی تعیین کنم که اگر یک متغییر true...
۱۳۹۹/۱۲/۲۷
  در انتظار بررسی: ۱
 پاسخگویی به سوالات ممکن است تا 24 ساعت زمان ببرد.