آشنایی با HTML
HTML چیست، چه نقشی در کنار CSS و جاوااسکریپت دارد و ساختار یک سند کامل اچتیامال چگونه نوشته میشود.
آنچه در این درس میآموزید
- بدانید HTML چه نقشی در ساخت صفحههای وب دارد
- ساختار یک عنصر را بشناسید؛ تگ، ویژگی و عنصر خالی
- نخستین سند کامل HTML را بنویسید و بخشهای آن را توضیح دهید
فهرست مطالب
هر صفحهای که در مرورگر باز میکنید، از یک وبسایت شخصی ساده تا یک شبکه اجتماعی پیچیده، روی یک چیز مشترک بنا شده است: HTML. مخفف عبارت HyperText Markup Language است؛ یعنی «زبان نشانهگذاری ابرمتن». HTML یک زبان برنامهنویسی نیست؛ زبانی است برای توصیف ساختار و معنای محتوا. به مرورگر میگوید «این بخش یک تیتر است»، «این یکی پاراگراف است»، «اینجا یک تصویر میآید».
HTML بهتنهایی درباره رنگ و فونت و جای قرار گرفتن چیزها تصمیم نمیگیرد. صفحههای وب با سه فناوری ساخته میشوند که هر کدام وظیفهای جدا دارد: HTML ساختار و معنا را تعیین میکند، CSS ظاهر را میسازد و جاوااسکریپت رفتار تعاملی را اضافه میکند. اگر ساختمان را به یاد بیاورید، HTML اسکلت و دیوارهاست، CSS نما و رنگآمیزی است و جاوااسکریپت برق و تجهیزات. در این دوره فقط با اسکلت کار داریم.
HTML چه کار میکند؟
HTML محتوای صفحه را با «عنصر» (Element) علامتگذاری میکند. این علامتگذاری سه مخاطب مهم دارد:
- مرورگر — از روی عناصر میفهمد هر بخش را چگونه نمایش دهد و در ساختار صفحه کجا بگذارد.
- موتورهای جستوجو — معنای عناصر به آنها کمک میکند محتوای صفحه را بفهمند و رتبهبندی کنند.
- فناوریهای کمکی — صفحهخوانها (Screen Reader) متن صفحه را برای کاربران نابینا با تکیه بر همین عناصر میخوانند.
به همین دلیل در HTML همیشه سراغ عنصری میرویم که معنای محتوای ما را دقیقتر بیان کند؛ نه عنصری که فقط شکل ظاهری دلخواه بدهد.
ساختار یک عنصر
بیشتر عنصرها از سه بخش ساخته میشوند: تگ آغازین، محتوا و تگ پایان. تگها داخل علامت کوچکتر و بزرگتر نوشته میشوند:
<!-- A paragraph: opening tag, content, closing tag -->
<p>This is a paragraph.</p>داخل تگ آغازین میتوان «ویژگی» (Attribute) نوشت؛ جفتهایی از نام و مقدار که اطلاعات اضافه به عنصر میدهند. در مثال زیر href ویژگی عنصر پیوند است:
<a href="https://example.com">Example website</a>یک گروه از عنصرها «عنصر خالی» (Void Element) نام دارد و اصلاً تگ پایان ندارد، چون محتوایی برای نگه داشتن ندارد. پرکاربردترینها عبارتاند از img برای تصویر، br برای شکست خط، hr برای خط جداکننده و input برای ورودی فرم:
<img src="cat.jpg" alt="A cat on the rooftop">نخستین سند کامل
حالا همه اینها را در یک سند کامل کنار هم بگذاریم. این کد را در فایلی به نام index.html ذخیره کنید و آن را با مرورگر باز کنید:
<!DOCTYPE html>
<html lang="fa" dir="rtl">
<head>
<meta charset="utf-8">
<title>My First Page</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is my first HTML page.</p>
</body>
</html>این سند را خطبهخط بخوانیم:
<!DOCTYPE html>اعلام میکند که سند با حالت استاندارد HTML نوشته شده است و همیشه باید خط اول فایل باشد.- عنصر
htmlریشهٔ کل سند است. ویژگیlangزبان محتوا را مشخص میکند و ویژگیdirجهت متن را؛ برای فارسیrtlیعنی راستبهچپ. - عنصر
headابردادههای صفحه را نگه میدارد؛ چیزهایی که خودشان روی صفحه دیده نمیشوند.meta charset="utf-8"رمزگذاری متن را تعیین میکند و بدون آن حروف فارسی نامفهوم میشوند. عنصرtitleعنوانی است که در تب مرورگر نمایش داده میشود. - عنصر
bodyبدنهٔ سند است؛ هر چیزی که کاربر واقعاً میبیند اینجا میآید، مثل تیترh1و پاراگرافp.
توضیحها در کد
در HTML میتوانید برای خودتان یادداشت بگذارید؛ «کامنت» (Comment) بین <!-- و --> نوشته میشود، مرورگر آن را نمایش نمیدهد و فقط برای خوانندهٔ کد است:
<!-- This section will be completed later -->
<p>Visible text for the user.</p>تمرینها
تمرین
تمرین ۱ — صفحهٔ معرفی خودتان
یک سند کامل HTML بنویسید که زبانش فارسی و جهتش راستبهچپ باشد، عنوان تب آن «About Me» باشد و در بدنه یک تیتر با نام شما و دو پاراگراف دربارهٔ خودتان داشته باشد.
<!-- Write your code here -->نمایش راهحل
<!DOCTYPE html>
<html lang="fa" dir="rtl">
<head>
<meta charset="utf-8">
<title>About Me</title>
</head>
<body>
<h1>Sara Mohammadi</h1>
<p>I am a computer engineering student.</p>
<p>In my free time I enjoy photography and reading.</p>
</body>
</html>:::
خلاصه
- HTML زبان نشانهگذاری ساختار و معنای محتواست؛ ظاهر با CSS و رفتار با جاوااسکریپت ساخته میشود.
- بیشتر عنصرها از تگ آغازین، محتوا و تگ پایان ساخته میشوند و ویژگیها داخل تگ آغازین میآیند.
- عنصرهای خالی مانند
imgوbrوinputتگ پایان ندارند. - هر سند با
<!DOCTYPE html>آغاز میشود؛headابردادهها وbodyمحتوای دیدنی را نگه میدارد. - ویژگیهای
langوdirوmeta charsetرا هرگز از قلم نیندازید.
در درس بعدی با عنصرهای متنی آشنا میشوید؛ ابزارهای اصلی برای نوشتن خود محتوای صفحه.