تا اینجا با ساختار اصلی HTML، تگها، Attributeها و تفاوت ID و Class آشنا شدهایم. حالا وقت آن رسیده است که وارد یکی از پرکاربردترین بخشهای HTML شویم: عنوان و پاراگراف در HTML.
تقریباً هر صفحهای که در وب میخوانید از عنوانها و پاراگرافها ساخته شده است. عنوانها به محتوا نظم میدهند و به کاربر کمک میکنند سریعتر متوجه شود هر بخش درباره چیست. پاراگرافها هم متن اصلی هر بخش را به شکل خوانا نمایش میدهند.
در این درس یاد میگیریم تگهای h1 تا h6 چه کاربردی دارند، تگ p برای چیست، ترتیب عنوانها چگونه باید باشد و چرا نباید فقط برای بزرگ یا کوچک کردن متن از Headingها استفاده کنیم.
عنوان و پاراگراف در HTML چیست؟
در HTML برای مشخص کردن عنوانهای بخشهای مختلف صفحه از عناصر Heading استفاده میکنیم و برای متنهای معمولی از عنصر Paragraph.
برای مثال:
<h1>آموزش HTML</h1>
<p>
در این دوره HTML را از پایه یاد میگیریم.
</p>
در این مثال:
h1عنوان اصلی محتوا را مشخص میکند.pیک پاراگراف متنی ایجاد میکند.
این دو گروه از عناصر ساده به نظر میرسند، اما استفاده صحیح از آنها روی خوانایی محتوا، دسترسپذیری و ساختار معنایی صفحه تأثیر زیادی دارد.
تگهای h1 تا h6 در HTML چه هستند؟
HTML شش سطح عنوان در اختیار ما قرار میدهد:
<h1>عنوان سطح ۱</h1>
<h2>عنوان سطح ۲</h2>
<h3>عنوان سطح ۳</h3>
<h4>عنوان سطح ۴</h4>
<h5>عنوان سطح ۵</h5>
<h6>عنوان سطح ۶</h6>
h1 بالاترین سطح عنوان و h6 پایینترین سطح عنوان است.
منظور از «سطح» اندازه ظاهری متن نیست؛ منظور جایگاه عنوان در ساختار و سلسلهمراتب محتوا است.
تگ h1 چه کاربردی دارد؟
تگ h1 معمولاً برای عنوان اصلی محتوای صفحه استفاده میشود.
مثلاً در یک مقاله آموزشی با عنوان «آموزش HTML از صفر»، میتوانیم بنویسیم:
<h1>آموزش HTML از صفر</h1>
بهتر است در بیشتر صفحات، یک h1 واضح داشته باشیم که موضوع اصلی صفحه را مشخص کند.
از نظر استاندارد HTML، وجود چند h1 در برخی ساختارها ممکن است معتبر باشد، اما برای ساختار روشن، قابلفهم و قابلپیشبینی، معمولاً استفاده از یک عنوان اصلی h1 برای محتوای صفحه انتخاب مناسبتری است.
تگ h2 چه کاربردی دارد؟
از h2 برای بخشهای اصلی زیرمجموعه عنوان اصلی استفاده میکنیم.
مثلاً اگر عنوان اصلی مقاله این باشد:
<h1>آموزش HTML</h1>
میتوانیم بخشهای اصلی مقاله را به شکل زیر بنویسیم:
<h2>HTML چیست؟</h2>
<h2>ساختار سند HTML</h2>
<h2>تگهای HTML</h2>
هر h2 یک بخش اصلی درون موضوع کلی صفحه را مشخص میکند.
تگ h3 چه کاربردی دارد؟
اگر یکی از بخشهای h2 خودش چند زیرموضوع داشته باشد، میتوانیم از h3 استفاده کنیم.
مثال:
<h1>آموزش HTML</h1>
<h2>متن در HTML</h2>
<h3>عنوانها در HTML</h3>
<h3>پاراگرافها در HTML</h3>
در این ساختار، «عنوانها» و «پاراگرافها» زیرمجموعه بخش «متن در HTML» هستند.
تگهای h4 تا h6 چه زمانی استفاده میشوند؟
تگهای h4، h5 و h6 برای سطوح عمیقتر محتوا هستند.
در بسیاری از مقالات معمولی شاید فقط از h1، h2 و h3 استفاده کنید و اصلاً نیازی به سطوح پایینتر نباشد.
اما در مستندات طولانی، راهنماهای فنی یا مطالب چندبخشی ممکن است ساختاری مثل این داشته باشیم:
<h1>راهنمای طراحی وب</h1>
<h2>HTML</h2>
<h3>فرمها</h3>
<h4>Inputها</h4>
<h5>Input متنی</h5>
<h6>ویژگیهای Input متنی</h6>
هدف این نیست که حتماً از تمام Headingها استفاده کنیم؛ فقط هرجا ساختار واقعی محتوا به سطح جدیدی نیاز دارد، از سطح مناسب استفاده میکنیم.
آیا باید ترتیب Headingها را رعایت کنیم؟
بله. برای داشتن ساختار روشن بهتر است Headingها را براساس سلسلهمراتب محتوا بنویسیم و بدون دلیل از یک سطح به سطح خیلی پایینتر نپریم.
ساختار مناسب:
<h1>آموزش HTML</h1>
<h2>مبانی HTML</h2>
<h3>تگها</h3>
<h3>Attributeها</h3>
<h2>متن در HTML</h2>
اما این ساختار بدون دلیل مشخص مناسب نیست:
<h1>آموزش HTML</h1>
<h4>تگها</h4>
در این مثال، سطحهای h2 و h3 نادیده گرفته شدهاند و ساختار محتوا برای خواننده و ابزارهای کمکی کمتر قابلپیشبینی میشود.
Headingها را برای بزرگ کردن متن استفاده نکنید
یکی از اشتباهات رایج افراد مبتدی این است که Heading را براساس اندازه ظاهری انتخاب میکنند.
مثلاً چون h1 در مرورگر بهصورت پیشفرض بزرگتر دیده میشود، از آن برای هر متن بزرگی استفاده میکنند.
این کار درست نیست.
Heading باید براساس معنی و سطح عنوان انتخاب شود، نه اندازه یا ظاهر آن.
ظاهر عنوانها را بعداً با CSS کنترل میکنیم.
مثلاً حتی اگر بخواهیم یک h2 از نظر ظاهری کوچکتر باشد، بهتر است همچنان از عنصر معنایی درست استفاده کنیم و فقط CSS آن را تغییر دهیم.
یک مثال ساده از ساختار صحیح عنوانها
فرض کنید میخواهیم یک مقاله درباره طراحی سایت بنویسیم.
ساختار آن میتواند اینطور باشد:
<h1>راهنمای شروع طراحی سایت</h1>
<p>
در این مقاله مسیر شروع طراحی سایت را بررسی میکنیم.
</p>
<h2>HTML چیست؟</h2>
<p>
HTML ساختار صفحات وب را مشخص میکند.
</p>
<h2>CSS چیست؟</h2>
<p>
CSS برای ظاهر و چیدمان صفحات وب استفاده میشود.
</p>
<h2>JavaScript چیست؟</h2>
<p>
JavaScript رفتار و تعامل صفحه را کنترل میکند.
</p>
این ساختار هم برای انسان قابلفهم است و هم سلسلهمراتب محتوا را واضح نشان میدهد.
تگ p در HTML چیست؟
عنصر p برای مشخص کردن یک پاراگراف استفاده میشود.
مثال:
<p>
HTML یکی از پایههای اصلی طراحی وب است.
</p>
اگر متن ما چند پاراگراف جداگانه داشته باشد، هر پاراگراف را داخل عنصر p مستقل قرار میدهیم:
<p>
HTML ساختار صفحه را مشخص میکند.
</p>
<p>
CSS ظاهر صفحه را کنترل میکند.
</p>
<p>
JavaScript رفتار صفحه را ایجاد میکند.
</p>
چرا برای هر پاراگراف از یک p جدا استفاده میکنیم؟
پاراگرافها بخشهای مستقل متن هستند و بهتر است هر ایده یا بخش متنی مستقل در یک p قرار بگیرد.
این کار باعث میشود:
- متن خواناتر شود.
- ساختار HTML واضحتر باشد.
- استایلدهی با CSS سادهتر شود.
- ابزارهای دسترسپذیری ساختار محتوا را بهتر تشخیص دهند.
آیا میتوان داخل p متن معمولی و عناصر دیگر داشت؟
بله. داخل پاراگراف میتوان متن و بسیاری از عناصر متنی یا Inline را قرار داد.
برای مثال:
<p>
برای یادگیری
<strong>HTML</strong>
بهتر است مثالها را خودتان تمرین کنید.
</p>
در این مثال عنصر strong داخل پاراگراف قرار گرفته است.
یا:
<p>
برای مشاهده دوره
<a href="/html-course/">آموزش HTML</a>
کلیک کنید.
</p>
در اینجا یک لینک داخل پاراگراف قرار دارد.
آیا میتوان Heading را داخل p قرار داد؟
خیر. Headingها ساختار مستقل خودشان را دارند و نباید داخل عنصر p قرار بگیرند.
نمونه نامناسب:
<p>
<h2>عنوان بخش</h2>
متن
</p>
روش مناسب:
<h2>عنوان بخش</h2>
<p>
متن مربوط به این بخش
</p>
عنوان و پاراگراف دو نقش متفاوت دارند و هرکدام باید ساختار مناسب خودش را داشته باشد.
آیا میتوان چند خط متن را داخل یک p نوشت؟
بله، اما باید بدانید که Enter زدن در کد HTML لزوماً به معنی ایجاد پاراگراف جدید در خروجی مرورگر نیست.
مثلاً:
<p>
خط اول
خط دوم
خط سوم
</p>
مرورگر معمولاً فاصلهها و شکستهای خط معمولی داخل متن HTML را به شکل فضای سفید پردازش میکند و لزوماً هر خط را جدا نمایش نمیدهد.
اگر چند پاراگراف مستقل داریم، بهتر است از چند عنصر p استفاده کنیم:
<p>پاراگراف اول</p>
<p>پاراگراف دوم</p>
در درس بعدی درباره عناصر مربوط به فرمتبندی متن و شکست خط بیشتر صحبت خواهیم کرد.
تفاوت p با br چیست؟
فعلاً بهصورت مقدماتی بدانید که p برای ایجاد یک پاراگراف مستقل است، اما br فقط یک شکست خط در همان جریان متن ایجاد میکند.
مثلاً:
<p>
تهران<br>
خیابان نمونه<br>
پلاک ۱۰
</p>
در این مثال سه خط متعلق به یک محتوای مرتبط هستند.
اما اگر دو ایده یا بخش متنی جدا داریم، استفاده از دو پاراگراف بهتر است:
<p>
HTML ساختار صفحه را مشخص میکند.
</p>
<p>
CSS ظاهر صفحه را مشخص میکند.
</p>
آیا تگ بسته p را میتوان حذف کرد؟
استاندارد HTML در بعضی شرایط اجازه میدهد تگ پایان p بهصورت ضمنی مشخص شود.
اما در این دوره برای اینکه کد واضح، مرتب و قابلخواندن باشد، پاراگرافها را همیشه به شکل کامل مینویسیم:
<p>
متن پاراگراف
</p>
این روش مخصوصاً برای افراد تازهکار خواناتر است و احتمال اشتباه در ساختار صفحه را کمتر میکند.
تفاوت عنوان صفحه با Heading چیست؟
در درس ساختار سند HTML با عنصر title آشنا شدیم.
title با Headingهایی مثل h1 متفاوت است.
مثلاً:
<head>
<title>آموزش HTML برای مبتدیان</title>
</head>
این عنوان معمولاً در تب مرورگر و اطلاعات سند استفاده میشود.
اما:
<body>
<h1>آموزش HTML برای مبتدیان</h1>
</body>
عنوان اصلی قابل مشاهده در محتوای صفحه است.
ممکن است متن title و h1 شبیه هم باشد، اما نقش آنها یکی نیست.
Headingها چه کمکی به خوانایی صفحه میکنند؟
تصور کنید یک مقاله چند هزار کلمهای بدون هیچ عنوانی نوشته شده باشد.
حتی اگر متن خوبی داشته باشد، پیدا کردن بخش مورد نظر بسیار سخت میشود.
Headingها محتوا را به قسمتهای قابلفهم تقسیم میکنند و به کاربر اجازه میدهند با یک نگاه سریع ساختار مطلب را متوجه شود.
این موضوع در موبایل اهمیت بیشتری پیدا میکند، چون کاربران معمولاً قبل از خواندن کامل مقاله، صفحه را سریع مرور میکنند.
Headingها و دسترسپذیری
عنوانهای صحیح فقط برای ظاهر صفحه نیستند.
کاربرانی که از ابزارهایی مانند Screen Reader استفاده میکنند میتوانند از Headingها برای درک ساختار صفحه و جابهجایی سریع بین بخشهای مختلف محتوا استفاده کنند.
به همین دلیل بهتر است سطح Headingها براساس ساختار واقعی مطلب انتخاب شود و فقط برای تغییر اندازه متن از آنها استفاده نکنیم.
Headingها و SEO چه ارتباطی دارند؟
ساختار مناسب عنوانها میتواند به موتورهای جستجو کمک کند موضوع و بخشهای مختلف محتوا را بهتر درک کنند، اما Heading بهتنهایی تضمینکننده رتبه بهتر در نتایج جستجو نیست.
مهمترین نکته این است که عنوانها برای کاربر واضح و مرتبط باشند و ساختار واقعی محتوا را نشان دهند.
مثلاً اگر بخش درباره «تفاوت HTML و CSS» است، عنوان زیر واضح است:
<h2>تفاوت HTML و CSS چیست؟</h2>
اما عنوانی مانند:
<h2>موضوع مهم</h2>
اطلاعات مفیدی درباره محتوای بخش در اختیار کاربر قرار نمیدهد.
آیا باید کلمه کلیدی را در تمام Headingها تکرار کنیم؟
خیر.
تکرار مصنوعی یک عبارت در تمام Headingها باعث میشود متن غیرطبیعی و خستهکننده شود.
بهتر است هر عنوان دقیقاً موضوع همان بخش را توضیح دهد.
اگر کلمه کلیدی بهصورت طبیعی در بعضی عنوانها قرار میگیرد، استفاده از آن مناسب است؛ اما اولویت همیشه با خوانایی و نیاز کاربر است.
ساختار پیشنهادی یک مقاله ساده
برای مثال یک مقاله آموزشی میتواند چنین ساختاری داشته باشد:
<h1>آموزش ساخت سایت</h1>
<p>
در این مقاله مراحل اولیه ساخت سایت را یاد میگیریم.
</p>
<h2>انتخاب ابزارهای لازم</h2>
<p>
ابتدا باید ابزارهای مورد نیاز را آماده کنیم.
</p>
<h2>یادگیری HTML</h2>
<p>
HTML ساختار اصلی صفحات وب را مشخص میکند.
</p>
<h3>ساخت اولین فایل HTML</h3>
<p>
یک فایل با پسوند html ایجاد میکنیم.
</p>
<h3>اجرای فایل در مرورگر</h3>
<p>
فایل را با مرورگر باز میکنیم.
</p>
<h2>یادگیری CSS</h2>
<p>
CSS ظاهر صفحه را کنترل میکند.
</p>
در این مثال، رابطه بین بخشهای اصلی و زیرموضوعها کاملاً مشخص است.
اشتباهات رایج در استفاده از Headingها
انتخاب Heading براساس اندازه ظاهری
اشتباه:
<h4>عنوان اصلی صفحه</h4>
فقط به این دلیل که ظاهر h4 کوچکتر است.
سطح Heading باید براساس جایگاه محتوا انتخاب شود و ظاهر آن را با CSS تغییر میدهیم.
استفاده از چند h1 بدون نیاز واقعی
برای یک مقاله معمولی بهتر است یک عنوان اصلی واضح داشته باشیم و زیرعنوانها را با h2 و سطوح پایینتر سازماندهی کنیم.
پرش بیدلیل بین سطح Headingها
مثلاً:
<h1>عنوان اصلی</h1>
<h4>زیرعنوان</h4>
اگر ساختار محتوا چنین پرشی را توجیه نمیکند، بهتر است سلسلهمراتب منطقی را رعایت کنیم.
استفاده از متن مبهم برای عنوانها
به جای:
<h2>اطلاعات بیشتر</h2>
در صورت امکان عنوان دقیقتری انتخاب کنید:
<h2>تفاوت HTML و CSS چیست؟</h2>
اشتباهات رایج در استفاده از پاراگرافها
قرار دادن تمام مقاله در یک p
نوشتن یک متن بسیار طولانی داخل یک پاراگراف بزرگ، خوانایی صفحه را کاهش میدهد.
هرجا موضوع یا ایده جدیدی شروع میشود، در صورت مناسب بودن یک پاراگراف جدید ایجاد کنید.
استفاده از br به جای پاراگراف
برای جدا کردن چند پاراگراف مستقل، چند بار br قرار ندهید.
نمونه نامناسب:
متن اول
<br>
<br>
متن دوم
روش بهتر:
<p>متن اول</p>
<p>متن دوم</p>
قرار دادن عناصر نامناسب داخل p
پاراگراف برای محتوای متنی و عناصر مناسب درون متن است. برای عنوانها، جدولها، بخشهای مستقل و ساختارهای بزرگتر از عناصر مربوط به خودشان استفاده میکنیم.
تمرین اول: یک مقاله کوتاه بسازید
داخل فایل تمرینی خود کد زیر را بنویسید:
<h1>درباره من</h1>
<p>
من در حال یادگیری طراحی وب هستم.
</p>
<h2>مهارتهایی که میخواهم یاد بگیرم</h2>
<p>
ابتدا HTML و CSS را یاد میگیرم.
</p>
<h3>HTML</h3>
<p>
HTML برای ساختار صفحات وب استفاده میشود.
</p>
<h3>CSS</h3>
<p>
CSS برای طراحی و ظاهر صفحات استفاده میشود.
</p>
فایل را ذخیره و در مرورگر باز کنید.
سپس با DevTools ساختار Headingها و پاراگرافها را در پنل Elements بررسی کنید.
تمرین دوم: ساختار اشتباه را اصلاح کنید
کد زیر را ببینید:
<h1>آموزش طراحی وب</h1>
<h4>HTML</h4>
<p>HTML ساختار صفحه است.</p>
<h2>CSS</h2>
<h5>رنگها</h5>
سعی کنید ساختار Headingها را طوری اصلاح کنید که سلسلهمراتب محتوا منطقیتر شود.
یک پاسخ ممکن:
<h1>آموزش طراحی وب</h1>
<h2>HTML</h2>
<p>HTML ساختار صفحه است.</p>
<h2>CSS</h2>
<h3>رنگها</h3>
تمرین سوم: صفحه را با Inspect بررسی کنید
یک مقاله یا صفحه وب را باز کنید و با Inspect چند عنوان را انتخاب کنید.
بررسی کنید:
- عنوان اصلی صفحه از چه Headingی استفاده میکند.
- بخشهای اصلی از چه سطحی هستند.
- آیا Headingها ترتیب منطقی دارند.
- پاراگرافهای متن با عنصر
pمشخص شدهاند یا خیر.
هدف این تمرین کپی کردن ساختار سایتهای دیگر نیست؛ فقط میخواهیم مهارت بررسی HTML واقعی را تمرین کنیم.
در این درس چه چیزهایی یاد گرفتیم؟
در این درس با عنوان و پاراگراف در HTML آشنا شدیم و یاد گرفتیم:
- HTML شش سطح Heading از
h1تاh6دارد. h1بالاترین سطح عنوان وh6پایینترین سطح است.- Headingها باید براساس ساختار محتوا انتخاب شوند، نه اندازه ظاهری.
- بهتر است سطح عنوانها را بدون دلیل نپریم.
- برای یک مقاله معمولی، داشتن یک
h1اصلی ساختار واضحتری ایجاد میکند. - عنصر
pبرای پاراگرافهای متنی استفاده میشود. - هر پاراگراف مستقل بهتر است در یک عنصر
pجدا قرار بگیرد. - Heading با عنصر
titleیکسان نیست. - ساختار صحیح Headingها به خوانایی و دسترسپذیری محتوا کمک میکند.
جمعبندی
عنوان و پاراگراف در HTML از پایهایترین ابزارهای ساخت محتوای خوانا و منظم هستند.
با تگهای h1 تا h6 سلسلهمراتب عنوانها را مشخص میکنیم و با p متن را به پاراگرافهای مستقل تقسیم میکنیم.
مهمترین نکته این است که Heading را براساس نقش و سطح واقعی محتوا انتخاب کنیم، نه صرفاً ظاهر پیشفرض آن در مرورگر. ظاهر همیشه میتواند بعداً با CSS تغییر کند.
در درس بعدی با عناصر مهم فرمتبندی و تأکید متن در HTML آشنا میشویم و تفاوت عناصری مانند strong، em، b و i را بررسی میکنیم.
درس قبلی: ID و Class در HTML چیست؟ تفاوت و کاربرد id و class
درس بعدی: فرمتبندی و تأکید متن در HTML؛ تفاوت strong، em، b و i