اچ‌تی‌ام‌ال کیست؟ توضیح بده.
زبان نشانه‌گذاری ابرمتنی (اچ‌تی‌ام‌ال) یا زبان نشانه‌گذاری استاندارد برای اسنادی‌ست که برای نمایش‌دادن در وب طراحی شده اند. اچ‌تی‌ام‌ال زبانی‌ست که محتوا و ساختار صفحات وب را تعریف و توصیف می‌کند. این زبان نشانه‌گذاری همواره در کنار سی‌اس‌اس و جاوا اسکریپت هستهٔ فناوری ساخت صفحه‌های وب هستند.مرورگرهای وب (Browsers) اسناد اچ‌تی‌ام‌ال را از یک سرور وب (Web Server) یا از حافظه محلی (Local Storage) دریافت می‌کنند و آن‌ها را به صفحات چندرسانه‌ای وب (Multi-media Web Pages) تبدیل می‌کنند. HTML ساختار یک صفحه وب را به‌صورت معنایی توصیف می‌کند و در نسخه‌های اولیه، نشانه‌هایی برای تعیین ظاهر صفحات نیز در آن گنجانده شده بود.عناصر اچ‌تی‌ام‌ال واحدهای سازنده صفحات اچ‌تی‌ام‌ال هستند. با استفاده از ساختارهای متداول اچ‌تی‌ام‌ال، تصاویر و سایر اشیاء مانند فرم‌های تعاملی می‌توانند در صفحه نمایش داده شده جاسازی شوند. اچ‌تی‌ام‌ال ابزاری را برای ایجاد اسناد ساختاریافته با تعیین معنای ساختاری برای متن‌هایی مانند عناوین، پاراگراف‌ها، لیست‌ها، لینک‌ها، نقل‌قول‌ها و سایر موارد فراهم می‌کند. عناصر HTML توسط تگ‌ها مشخص می‌شوند که با استفاده از براکت‌های زاویه‌دار نوشته می‌شوند. تگ‌هایی مانند codice_1 و codice_2 مستقیماً محتوا را به صفحه وارد می‌کنند. تگ‌های دیگر مانند codice_3 و codice_3 متن سند را احاطه کرده و اطلاعاتی درباره آن ارائه می‌دهند و ممکن است شامل تگ‌های زیرعنصر باشند. مرورگرها تگ‌های HTML را نمایش نمی‌دهند، بلکه از آن‌ها برای تفسیر محتوای صفحه استفاده می‌کنند.عناصر اچ‌تی‌ام‌ال، سنگ‌بناهای اصلی صفحات وب هستند. با به‌کارگیری ساختارهای پیش‌فرض اچ‌تی‌ام‌ال، می‌توان عناصری مانند تصاویر، فرم‌های تعاملی و سایر اجزای چندرسانه‌ای را در صفحات وب جای داد. اچ‌تی‌ام‌ال ابزاری قدرتمند برای ایجاد اسناد سازمان‌یافته است که با تعریف معنای ساختاری برای بخش‌های مختلف متن، مانند عنوان‌ها، پاراگراف‌ها، فهرست‌ها، پیوندها، نقل‌قول‌ها و موارد دیگر، به نظم‌بخشی محتوا کمک می‌کند. این عناصر توسط تگ‌هایی مشخص می‌شوند که با براکت‌های زاویه‌دار (codice_5) نوشته می‌شوند. برخی تگ‌ها مانند codice_1 و codice_2 به‌طور مستقیم محتوا را به صفحه اضافه می‌کنند، در حالی که تگ‌هایی مانند codice_3 و codice_3 متن را در بر گرفته و اطلاعاتی درباره آن ارائه می‌دهند و ممکن است شامل تگ‌های فرعی درون خودشان مانند codice_3 یا codice_3 باشند. مرورگرها تگ‌های اچ‌تی‌ام‌ال را نمایش نمی‌دهند، بلکه از آن‌ها برای تفسیر و نمایش صحیح محتوای صفحه (Render) استفاده می‌کنند.اچ‌تی‌ام‌ال می‌تواند برنامه‌های نوشته‌شده به زبان‌های اسکریپتی مانند جاوااسکریپت را جاسازی کند که بر رفتار و محتوای صفحات وب تأثیر می‌گذارند. استفاده از CSS ظاهر و چیدمان محتوا را تعریف می‌کند. کنسرسیوم جهانی وب (W3C)، که قبلاً مسئول نگهداری استانداردهای HTML بود و اکنون مسئول استانداردهای CSS است، از سال ۱۹۹۷ استفاده از CSS را به جای HTML نمایشی صریح تشویق کرده است.[۳] نوعی از HTML به نام HTML5 برای نمایش ویدیو و صدا استفاده می‌شود که عمدتاً از عنصر codice_12 همراه با جاوااسکریپت بهره می‌برد.اچ‌تی‌ام‌ال این قابلیت را دارد که برنامه‌های نوشته‌شده به زبان‌های اسکریپتی مانند جاوااسکریپت را در خود جای دهد، که این برنامه‌ها بر رفتار و محتوای صفحات وب تأثیر می‌گذارند. از سوی دیگر، با استفاده از سی‌اس‌اس، ظاهر و چیدمان محتوا تعیین می‌شود. کنسرسیوم جهانی وب (W3C)، که پیش‌تر مسئول نگهداری استانداردهای اچ‌تی‌ام‌ال بود و اکنون نگهدارنده استانداردهای سی‌اس‌اس است، از سال ۱۹۹۷ استفاده از سی‌اس‌اس را به جای اچ‌تی‌ام‌ال نمایشی صریح توصیه کرده است. نسخه‌ای از اچ‌تی‌ام‌ال به نام اچ‌تی‌ام‌ال 5 برای نمایش ویدیو و صدا به‌کار می‌رود که عمدتاً از عنصر codice_12 در کنار جاوااسکریپت استفاده می‌کند.تاریخچه.توسعه.در سال ۱۹۸۰، تیم برنرز-لی، فیزیک‌دان و پیمانکار در سازمان اروپایی پژوهش‌های هسته‌ای (CERN)، سیستمی به نام ENQUIRE را طراحی و نمونه‌سازی کرد که به پژوهشگران سرن امکان می‌داد اسناد را به راحتی استفاده و به اشتراک بگذارند. در سال ۱۹۸۹، برنرز-لی پیشنهاد خود برای ایجاد یک سیستم ابرمتن مبتنی بر اینترنت را در قالب یک یادداشت ارائه کرد. او در اواخر سال ۱۹۹۰، زبان اچ‌تی‌ام‌ال را خلق کرد و نرم‌افزارهای مربوط مرورگر و سرور را نوشت. در همان سال، برنرز-لی و رابرت کایو، مهندس سیستم‌های داده‌ای سرن، برای جذب بودجه‌ی پروژه همکاری کردند، اما این پروژه به‌طور رسمی توسط سرن پذیرفته نشد. در یادداشت‌های شخصی خود در سال ۱۹۹۰، برنرز-لی فهرستی از "حوزه‌های مختلفی که ابرمتن در آن‌ها استفاده می‌شود" تهیه کرد که اولین مورد آن یک دانشنامه بود.اولین توصیف عمومی از اچ‌تی‌ام‌ال در سندی به نام "برچسب‌های اچ‌تی‌ام‌ال" منتشر شد، که در اواخر سال ۱۹۹۱ توسط تیم برنرز-لی در اینترنت معرفی گردید. این سند ۱۸ عنصر اولیه‌ی اچ‌تی‌ام‌ال را شرح می‌داد که ساختار نسبتاً ساده‌ای داشتند. به‌جز تگ پیوند (hyperlink)، این عناصر به شدت تحت تأثیر سرناس‌جی‌ام‌ال، یک فرمت مستندات مبتنی بر زبان نشانه‌گذاری عمومی استاندارد در سرن، بودند. یازده مورد از این عناصر هنوز در اچ‌تی‌ام‌ال 4 وجود دارند.اچ‌تی‌ام‌ال یک زبان نشانه‌گذاری است که مرورگرهای وب از آن برای تفسیر و ترکیب متن، تصاویر و سایر عناصر به صفحات وب قابل مشاهده یا شنیداری استفاده می‌کنند. ویژگی‌های پیش‌فرض هر عنصر اچ‌تی‌ام‌ال در مرورگر تعریف شده‌اند، اما طراحان صفحات وب می‌توانند با استفاده از سی‌اس‌اس این ویژگی‌ها را تغییر یا بهبود بخشند. بسیاری از عناصر متنی در گزارش فنی ایزو سال ۱۹۸۸ با عنوان "TR 9537 (تکنیک‌های استفاده از اس‌جی‌ام‌ال)" ذکر شده‌اند، که ویژگی‌های زبان‌های قالب‌بندی متنی اولیه، مانند دستور RUNOFF (که در اوایل دهه ۱۹۶۰ برای سیستم اشتراک زمانی سازگار توسعه یافت)، را توصیف می‌کند. این دستورات قالب‌بندی از روش‌های دستی حروف‌چین‌ها برای تنظیم اسناد الهام گرفته‌اند. با این حال، مفهوم اس‌جی‌ام‌ال بر پایه‌ی عناصر (محدوده‌های تو در تو با ویژگی‌های مشخص) استوار است، نه صرفاً اثرات ظاهری چاپی، و ساختار و نشانه‌گذاری را از هم جدا می‌کند. اچ‌تی‌ام‌ال به‌تدریج با معرفی سی‌اس‌اس به این رویکرد نزدیک‌تر شده است.برنرز-لی اچ‌تی‌ام‌ال را به‌عنوان یک کاربرد از اس‌جی‌ام‌ال در نظر گرفت. این موضوع به‌طور رسمی توسط کارگروه مهندسی اینترنت (IETF) در اواسط سال ۱۹۹۳ با انتشار اولین پیش‌نویس مشخصات اچ‌تی‌ام‌ال تحت عنوان "زبان نشانه‌گذاری ابرمتن (اچ‌تی‌ام‌ال)" تأیید شد. این پیش‌نویس توسط برنرز-لی و دن کانولی نوشته شده بود و شامل یک تعریف نوع سند اس‌جی‌ام‌ال برای تعریف نحو بود. این پیش‌نویس پس از شش ماه منقضی شد، اما به‌دلیل تأیید تگ سفارشی مرورگر NCSA Mosaic برای جاسازی تصاویر درون‌خطی، قابل توجه بود. این موضوع نشان‌دهنده‌ی فلسفه‌ی IETF در پایه‌گذاری استانداردها بر اساس نمونه‌های اولیه موفق بود. به‌طور مشابه، پیش‌نویس رقیب دیو راگت با عنوان "اچ‌تی‌ام‌ال+ (قالب نشانه‌گذاری ابرمتن)" در اواخر سال ۱۹۹۳، استانداردسازی ویژگی‌هایی مانند جداول و فرم‌های پرکردنی را پیشنهاد کرد.پس از انقضای پیش‌نویس‌های اچ‌تی‌ام‌ال و اچ‌تی‌ام‌ال+ در اوایل سال ۱۹۹۴، IETF یک کارگروه اچ‌تی‌ام‌ال ایجاد کرد. در سال ۱۹۹۵، این کارگروه "اچ‌تی‌ام‌ال 2.0" را به‌عنوان اولین نسخه‌ی استاندارد اچ‌تی‌ام‌ال منتشر کرد که قرار بود مبنایی برای پیاده‌سازی‌های آینده باشد.توسعه‌ی بیشتر HTML تحت نظر IETF به دلیل اختلاف‌نظرها و رقابت‌های موجود متوقف شد. از سال ۱۹۹۶، کنسرسیوم جهانی وب (W3C) مسئولیت نگهداری و توسعه‌ی مشخصات اچ‌تی‌ام‌ال را با مشارکت شرکت‌های نرم‌افزاری بر عهده گرفت. در سال ۲۰۰۰، اچ‌تی‌ام‌ال به یک استاندارد بین‌المللی (ISO/IEC 15445:2000) تبدیل شد. اچ‌تی‌ام‌ال 4.01 در اواخر سال ۱۹۹۹ منتشر شد و اصلاحیه‌های آن تا سال ۲۰۰۱ ادامه یافت. در سال ۲۰۰۴، توسعه‌ی اچ‌تی‌ام‌ال5 در کارگروه تعیین فناوری کاربرد ابرمتن وب (WHATWG) آغاز شد. این پروژه در سال ۲۰۰۸ به یک تلاش مشترک بین کارگروه تعیین فناوری کاربرد ابرمتن وب و اتحادیه وب جهان‌گستر تبدیل شد و در نهایت در ۲۸ اکتبر ۲۰۱۴ به‌عنوان یک استاندارد رسمی منتشر گردید.خط‌زمانی پیش‌نویس‌های اچ‌تی‌ام‌ال.نسخه‌های اکس‌اچ‌‌تی‌ام‌ال.اکس‌اچ‌‌تی‌ام‌ال یک زبان جداگانه است که به شکل فرمول‌بندی دوبارهٔ HTML 4.01 خود را نشان می‌دهد و از XML1.0 استفاده نموده است. اما به‌عنوان یک استاندارد جداگانه نمی‌توان از آن نام برد.نشانه‌گذاری.نمونهٔ زیر، کد معروف Hello World است که معمولاً برای مقایسه زبان‌های برنامه‌نویسی، زبان‌های اسکریپت‌نویسی و زبان‌های نشانه‌گذاری به کار می‌رود:&lt;!DOCTYPE html&gt;&lt;html&gt; &lt;head&gt; &lt;title&gt;This is a title&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;p&gt;Hello world!&lt;/p&gt; &lt;/body&gt;&lt;/html&gt;عنصر اچ‌تی‌ام‌ال.نمونه عنصرهای اچ‌تی‌ام‌ال.سرتیترها: تگ‌های تا &lt;h1&gt;بزرگتر&lt;/h1&gt;&lt;h2&gt;بزرگ&lt;/h2&gt;&lt;h3&gt;کمی کوچک&lt;/h3&gt;&lt;h4&gt;کوچک&lt;/h4&gt;&lt;h5&gt;ریز&lt;/h5&gt;&lt;h6&gt;بسیار ریز&lt;/h6&gt;در بین تگ های &lt;h&gt; تگ در سئو اهمیت حیاتی دارد.پاراگراف‌ها:&lt;p&gt;Paragraph 1&lt;/p&gt;&lt;p&gt;Paragraph 2&lt;/p&gt;خط‌شکن (پرش به خط بعد):&lt;br&gt; یا &lt;br/&gt;تفاوت میان یک تگ و در این است که "br" متن بعد از خود را به خط بعد می برد بدون این‌که در ساختار معنایی صفحه تغییری ایجاد کند، درحالی‌که "p" متن را درون پاراگراف‌هایی بخش‌بندی میکند. همچنین به یاد داشته باشید که "br" یک تگ خالی(مستقل) می‌باشد، یعنی ممکن است دارای ویژگی‌هایی باشد ولی نمی‌تواند محتوایی را در خود جای دهد و تگ پایانی نیز ندارد.&lt;p&gt;Thisis a paragraphwithline breaks&lt;/p&gt;برای ایجاد لینک از تگ استفاده می‌شود. برای مثال:&lt;a href="https://www.wikipedia.org/"&gt;A link to Wikipedia!&lt;/a&gt;&lt;a href="note.html"&gt; a link to name&lt;/a&gt; ویژگی href آدرسی که لینک به آن اشاره می‌کند را در خود نگه می‌دارد.همچنین می توان داخل href اسم فایل هم گذاشت.توضیحات:&lt;!-- This is a comment --&gt; توضیحات در درک بیشتر کدها کمک می‌کنند و در صفحه وب به علت نادیده گرفتن آن‌ها توسط مرورگر دیده نمی‌شوند.دیواره/جداکننده ():تگ div یا دایو یا دیو که از کلمه (Division) گرفته شده، یکی از تگ‌های پرکاربرد در طراحی صفحات وب می‌باشد که با استفاده از آن می‌توان یک یا چندین بخش را در یک صفحهٔ وب ایجاد کرد&lt;div&gt;&lt;h2&gt;بزرگ&lt;/h2&gt;&lt;p&gt;Salam .&lt;/p&gt;&lt;/div&gt;برای استفاده از تگ‌های متا که برای موتورهای جستجوگر هستند نیز از این نمونه‌ها استفاده می‌کنیم: &lt;head&gt; &lt;meta charset="UTF-8"/&gt; &lt;meta name="description" content="Free Web tutorials"/&gt; &lt;meta name="keywords" content="HTML, CSS, JavaScript"/&gt; &lt;meta name="author" content="John Doe"/&gt; &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"/&gt; &lt;meta http-equive="refresh" content="5"/&gt;&lt;/head&gt; تگ های نوشتاری &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;/head&gt; &lt;body&gt; &lt;i&gt; ایتالیک &lt;/i&gt; &lt;b&gt; بولد شدن متن &lt;/b&gt; &lt;u&gt; خط کشیدن زیرمتن &lt;/u&gt; &lt;big&gt; افزایش سایز فونت &lt;/big&gt; &lt;small&gt; کاهش سایز فونت &lt;/small&gt; &lt;mark&gt; بوک مارک &lt;/mark&gt; &lt;sup&gt; بالا متن نوشتن &lt;/sup&gt; &lt;sub&gt; پایین متن نوشتن &lt;/sub&gt; &lt;em&gt; تاکید روی موضوع &lt;/em&gt; &lt;/body&gt;&lt;/html&gt;ترکیب کردن تگ ها: تگ ها را می توان در اچ تی ام ال ترکیب کرد و تنها قاعده آن این است که آخرین تگی که باز میشود همان نیز اول بسته شود.&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;/head&gt; &lt;body&gt; &lt;div&gt; &lt;p&gt; this is a paragraph with a &lt;b&gt;bold&lt;/b&gt; word. &lt;i&gt;&lt;u&gt;example 2&lt;/u&gt;&lt;/i&gt; &lt;/p&gt; &lt;/div&gt; &lt;/body&gt;&lt;/html&gt;لینک به Css &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;link rel="stylesheet" type="text/css" href="example.css" /&gt; &lt;/head&gt; &lt;body&gt; &lt;/body&gt;&lt;/html&gt;لینک به سند javascript&lt;script src="example.js"&gt;&lt;/script&gt;معمولا برای لینک دادن به یک سند javascript در html، کد مربوطه را در زیر تگ body قرار می دهند. البته در برخی مواقع نیز نیاز است تا کد را در قسمت های بالاتر یا حتی در تگ head قرار دهیم.مثلا تگ مربوط به گوگل آنالیتیکس را بهتر است تا در تگ head قرار دهیم تا گوگل آنالیتیکس بتواند تمام بازدیدهای سایت را به حساب بیاورد.