اچ‌تی‌ام‌ال

زبان نشانه‌گذاری ابرمتنی یا یا اچ‌تی‌ام‌ال ، HTML یا HyperText Markup Language در کنار سی‌اس‌اس هسته فناوری ساخت صفحه‌های وب هستند. اچ‌تی‌ام‌ال زبان توصیف ساختار صفحه‌های وب است. زبانی‌است برای نشانه‌گذاری ابرمتن (فرامتن) که برای تدوین قالب و طراحی صفحه‌های وب به کار می‌برند. دستورالعمل‌های این زبان، برچسب (Tag) نام دارند که محتوای یک صفحه وب، با آن‌ها، نشانه‌گذاری شده و بدین‌ترتیب، نحوه نمایش آن صفحه برای مرورگرهای وب، توصیف می‌شود.
تاکنون ۵ نسخه از اچ تی ام‌ال عرضه شده‌است.
هر یک از برچسب‌های اچ‌تی‌ام‌ال، معنا و مفهوم خاصی دارند و تاثیر مشخصی بر محتوا می‌گذارند؛ مثلا برچسب‌هایی برای تغییر شکل ظاهری متن، نظیر درشت و ضخیم کردن یک کلمه یا برقراری پیوند به صفحات دیگر در اچ‌تی‌ام‌ال تعریف شده‌اند.
یک سند اچ‌تی‌ام‌ال، یک پرونده مبتنی بر متن (Text–based) است که معمولا با پسوند .htm یا .html نام‌گذاری شده و محتویات آن از برچسب‌های اچ‌تی‌ام‌ال تشکیل می‌شود. مرورگرهای وب، که قادر به درک و تفسیر برچسب‌های اچ‌تی‌ام‌ال هستند، تک‌تک آن‌ها را از داخل سند اچ‌تی‌ام‌ال خوانده و سپس محتوای آن صفحه را نمایان‌سازی (Render) می‌کنند.
اچ‌تی‌ام‌ال زبان برنامه‌نویسی نیست، بلکه زبانی برای نشانه‌گذاری ابرمتن است و اساسا برای ساخت‌مند کردن اطلاعات و جدایش اجزای منطقی یک نوشتار — نظیر عناوین، تصاویر، فهرست‌ها، بندها و جداول — به کار می‌رود. از سوی دیگر، اچ‌تی‌ام‌ال را نباید به عنوان زبانی برای صفحه‌آرایی یا نقاشی صفحات وب به کار برد؛ این وظیفه اکنون بر دوش فناوری‌های دیگری همچون سی‌اس‌اس است.
گفتنی است اچ‌تی‌ام‌ال شکلی از زبان دیگری به نام اس‌جی‌ام‌ال است و World Wide Web Consortium آن را به عنوان استانداردی برای نشانه‌گذاری مستندات ابرمتنی برای عرضه در وب، تدوین کرده‌است.
در اچ‌تی‌ام‌ال سه نوع برچسب وجود دارد:
تگ‌های یکه. مانند که خط رسم می‌کند.
تگ‌هایی که شروع و پایان دارند. مثل:
تگ‌هایی که دارای ویژگی می‌باشند. مثل:
تاریخچه
توسعه
در سال ۱۹۸۰ فیزیکدانی به نام تیم برنز لی که با پروژه CERN همکاری داشت ENQUIRE را طراحی و ارائه کرد که یک سیستم مهم برای محققان CERN بود تا اینکه از این داده‌ها به شکل مشترک استفاده کنند. در سال ۱۹۸۹، Berners- Lee یک یادداشت پیشنهاد یک سیستم ابر متن مبتنی بر اینترنت نوشت. Berners- Lee یک نوع خاص HTML را مشخص نمود و یک نسخه جستجوگر و نرم‌افزار سرور را در انتهای۱۹۹۰ نوشت. در این سالیان این فیزیکدان و مهندس سیستم‌های داده‌های CERN به نام Robert Cailliau یک سرمایه‌گذاری مشترک را انجام دادند ولی این پروژه به شکل رسمی توسط CERN دنبال نشد. در یادداشت‌های شخصی او از سال ۱۹۹۰ اشاره شده‌است که برخی از مناطق مختلف ابر متن (hypertext) به کار گرفته شده‌است و در ابتدای آن از یک دائرهالمعارف استفاده گردید.
اولین بار شرح کامل HTML به این شکل بود که به آن در نسخه‌های قبلی "HTML Tags" گفته شد که برای اولین بار توسط Berners –Lee در سال ۱۹۹۱ روی اینترنت قرار گرفت؛ که آن توصیف ۱۸ عناصر شامل عناصر اولیه، طراحی نسبتا ساده از HTML بود. به غیر از Hyperlink این موارد تحت تاثیر SGMLguid در فرمت مبتنی بر SGML قرار گرفت و در پروژه CERN به کار. رفت یازده مولفه از آن در HTML 4 نوشته شده‌است.
زبان نشانه گذاری ابرمتنی به شکلی است که مرورگرهای وب برای تحلیل و نوشتن متون تصاویر و دیگر مواد روی صفحات قابل شنیدن و قابل دیدن وب به کار می‌رود. ویژگی‌های پیش‌فرض برای هر مورد در ساختار HTML در جستجوگر تعریف شده‌است و این ویژگی‌ها را می‌توان تغییر داد یا اینکه توسط CSS بر اساس طراحی صفحه افزایش داد. بسیاری از اجزای متن در گزارش فنی 1988 ISO به شکل TR9537 ارائه شده‌است که نام این جزء روش‌های استفاده از SGML بود که در آن ویژگی‌های اولیه ساختار زبانی مانند آنچه که در مورد فرمان RUNOFF دیده می‌شود استفاده شد که در ابتدای دهه ۱۹۶۰ برای CTSS ارائه شده‌است. این فرمان‌های ساختاری از فرمان‌های مورد استفاده توسط typesetters استفاده می‌کند که به شکل دستی برای فرمت‌های مختلف در نظر گفته شده‌اند. اما اصل SGML برای ساختار کلی بر اساس اجزای مختلف است (محدوده‌های حاشیه‌نویسی تو در تو به همراه ویژگی‌هایی که دارد) تا اینکه از اثرات چاپ استفاده شود. همچنین جداسازی ساختارها و شکل ترکیبی نیز باید در نظر گرفته شود. HTML به شکل مداوم به این صورت با CSS به کار گرفته می‌شود.
Berners- Lee از HTML به عنوان یک ابزار برای SGML استفاده کرده‌است. به‌طور کلی آن را به عنوان دستور نیروی ضربت مهندسی اینترنت(IETF) تعریف کرده‌است که در سال ۱۹۹۳ نسخه‌های اولیه از آن را بر اسا HTML ارائه نمود."زبان نشانه‌گذاری ابرمتنی HTML" پیش‌نویسی اینترنتی توسط Dan Cannolly ,Berners- Lee ارائه گردید و درون تعریف نوع سند SGML برای تعریف گرامر ارائه شد. این نسخه اولیه پس از شش ماه منقضی گردید ولی قابل توجه اینکه از جستجو گرNCSA Mosaic به شکل جستجو گر پیش‌فرض برای تصاویر بر خط استفاده شد که نشان دهنده فلسفه IETF در استانداردهای ساختارهای موفق است. به همین شکل Dave Raggetts رقابت خود را با ارائه(Internet-Draft , HTML+(Hypertext Markup format از انتهای ۱۹۹۳ شروع کرد و پیشنهاد کرد که یک ساختار اجرایی مانند جداول و شکلهای پر شونده را می‌توان برای این منظور به کار گرفت.
پس از آنکه HTML و +HTML به شکل پیش نویس در ابتدای ۱۹۹۴ منقضی گردید،IEFT یک گروه کاری HTML را ایجاد کرد که در سال ۱۹۹۵ نسخه HTML 2.0 تکمیل گردید، HTML اولیه با این قصد ساخته شده که به شکل یک ساختار استاندارد در آینده از آن استفاده شود.
پس از آن پیشرفت‌هایی در IETF در نظر گرفته شد که مورد توجه رقیبان قرار گرفت. تا سال ۱۹۹۶ ویژگی‌های HTML حفظ شد و ورودی‌هایی از نرم‌افزارهای تجاری گرفته شد که این کار توسط (W3C) انجام شد. اما در سال 2000 HTML یک استاندارد بین‌المللی
(ISO/IEC 15445:2000) گردید. HTML4.01 در انتهای ۱۹۹۹ انتشار یافت و پس از آن ساختار بعدی آن در سال ۲۰۰۱ به شکل کامل منتشر شد- در سال ۲۰۰۴ پیشرفت‌هایی در HTML5 در (WHATWG) در نظر گرفته شد و شکل قابل ان تشار آن به شکل W3C در سال ۲۰۰۸ ارائه گردید.
نسخه‌های HTML جدول زمانی
۲۱ نوامبر ۱۹۹۵
HTML 2.0 به شکل IETF RFC 1866 انتشار یافت.RFCs تکمیلی ظرفیت‌های زیر را داشت:
۲۵ نوامبر RFC 1867:1995 (آپلود فایل مبتنی بر فایل)
می‌RFC 1942:1996 (جداول)
اگوست RFC 1980:1996(نقشه‌های تصویری سمت مشتریان)
ژانویه RFC 207O:1997 (بین‌المللی شده)
ژانویه ۱۹۹۷
HTML3.2 به شکل توصیه نامه W3C انتشار یافت. نسخه اول پیشرفت داده شد و استاندارد کردن آن به شکل انحصاری توسط W3C انجام شد به همین شکل IETF گروه کاری خود HTML را در سپتامبر ۱۹۹۶ کاملا ارائه کرد. در ابتدا این فرمان را Wilbur نامید. HTML3.2 فرمول‌های ریاضی را به‌طور کامل به کار گرفت، که در آن همپوشانی‌هایی در اجزای مختلف پیشرفت کرده آن داشت و از مهم‌ترین ابزارهای تصویری Netscape استفاده شده بود. عناصر مبهم Netscape و عناصر متحرک Microsoft مورد استفاده قرار نگرفت که دلیل آن توافق دو طرفه میان دو شرکت بود. ساختار ریاضی مورد استفاده مشابه با HTML بود ولی استاندارد کردن آن تا ۱۴ ماه پس از MathML انجام نگرفت.
دسامبر۱۹۹۷
html 4.0 توصیه W3C را ارائه کرد که در آن سه تفاوت عمده اعمال شده بود:
مشکل کلی که در آن اجزای بد پنهان شده بودند.
انتقالی که در آن اجزای بد اجازه داده شده بودند.
قاب که در آن قاب با اجزای مختلف مرتبط اجازه داده شده بودند.
درابتدا با کد نام "Cougar" نامگذاری شده بود و 0.HTML4 از انواع اجزای خاص جستجوگر و ساختارهای مختلف استفاده کرده بود ولی در همان زمان مرحله‌ای در نظر گرفته شد که از ویژگی‌های نشانه‌گذاری بصری Netscap را با مارک آن‌ها به عنوان نفع شیوه نامه‌ها توصیه نمی‌شود. HTML 4 یک برنامه SGML مطابق با ISO 8879 است.
آوریل ۱۹۹۸
HTML4.0 برخی تغییرات اندک را دوباره انجام داد بدون آنکه تعداد نسخه‌ها را افزایش دهد.
دسامبر ۱۹۹۹
HTML4.01 به توصیه W3C انتشار یافت. در آن سه تغییر کلی به شکل HTML4.0 در نظر گرفته شد و آخرین غلط نامه در ۱۲ می‌۲۰۰۱ انتشار یافت.
می‌۲۰۰۰
2000:ISO/IEC ۱۵۴۴۵ به عنوان استاندارد بین‌المللی ISO/IEC انتشار یافت. در ISO این استاندارد در حوزه ISO/IEC JTC1/SC34 قرارگرفت. دراواسطISO/IEC15445:2000,HTML4.01 :2008 جدیدترین نسخه‌های HTML ارائه شد. پیشرفت‌های موازی صورت گرفته، باعث شد که XHTML مبتنی بر XML حاصل شود که توسط گروه کاری W3CHTML در طی اوایل و اواسط ۲۰۰۰ اشغال شده بود.
جدول زمانی نسخه‌های پیش نویس HTML
اکتبر ۱۹۹۱
برچسب‌های HTML فهرستی از نسخه‌های غیررسمی CERN که در آن ۱۸ برچسب‌های HTML وجود دارد که برای اولین بار برای عموم مورد استفاده قرار گرفت.
ژوئن ۱۹۹۲
پیش نویس غیررسمی اول HTML DTD هفت بار مورد اصلاح قرار گرفت(۱۵ ژوئیه، ۶آگوست، ۱۸ آگوست، ۱۷ نوامبر، ۱۹نوامبر، ۲۰نوامبر و ۲۲ نوامبر)
نوامبر ۱۹۹۲
HTML DTD1.1 اولین نسخه دارای اعداد بر مبنای اصلاحات RCS که با ۱٫۱ شروع شد تا اینکه با ۱٫۰ شروع شود و این به عنوان نسخه غیررسمی درآمد
ژوئن ۱۹۹۳
زبان ساختاری Hypertext توسط گروه کاری IETF IIIR به عنوان نسخه اینترنتی درآمد (که یک پیش نویس برای استاندارد در نظر گرفته شد) این جایگزین نسخه دوم شد که یکماه بعد از این اتفاق افتاد و پس از آن شش پیش نویس توسط IETF انتشار یافت و در نهایت منجر به ارائه HTML 2.0 در RFC1866 گردید.
نوامبر ۱۹۹۳
HTML+ توسط IETF انتشار یافت که یک پیش نویس اینترنتی بود و رقیب پیش نویس زبان ساختاری Hyper textگردید. در می‌۱۹۹۴ این نسخه منقضی گردید.
آوریل ۱۹۹۵
(تا مارس ۱۹۹۵ نسخه‌های نهایی آن ارائه شد): HTML3.0 را می‌توان یک استاندارد برای IETF در نظر گرفت ولی پیش نویس آن ۵ ماه بعد بدون هیچگونه اقدامی منقضی گردید. این شامل ظرفیت‌هایی بود که در پیش نویس +Raggetts HTML دیده شده و برای پشتیبانی جداول و متون در اطراف تصاویر به کار گرفته شد و می‌توانست که فرمول‌های ریاضی پیچیده را نمایش دهد. W3C برای جستجوگر Arena پیشرفت کرد و به عنوان یک بستر آزمایشی برای HTML3 و صفحات آبشاری شکل استفاده شد ولی HTML3.0 به دلایل مختلف موفق نبود. این پیش نویس بسیار بزرگ بود و ۱۵۰ صفحه در آن دیده شد و تعدادی از اجزای جالب به آن اضافه شد و منابع IETF در خارج آن قرار گرفت. ارائه کنندگان جستجوگر شامل Netscape ,Microsoft در همین زمان زیر مجموعه‌های مختلفی از HTML3 را انتخاب کردند تا اینکه پیشرفت‌هایی در آن ایجاد شود. این پیشرفت‌ها برای کنترل جنبه‌های مختلف در نظر گرفته شد که رنگ متن، بافت پیش تصویر، اندازه فونت و شکل فونت در خارج از محدود ی زمانی قرار می‌گرفت و این می‌توانست نشان دهد که چگونه این بخش سازماندهی شده‌است. Dave Raggett برای چندین سال از W3C استفاده کرده بود که یک مثال مطلوب برای این منظور بود. مطمئنا مایکروسافت براساس صفحات وب ساخته شده بود و از ویژگی‌های HTML انتخاب شده بود.
ژانویه ۲۰۰۸
HTML5 به عنوان پیش نویس کاری توسط W3C انتشار یافت ولی syntax یک HTML5 , SGML را ارائه کرد که تلاش کرده بود که از SGML استفاده کند و HTML5 تلاش‌های مختلفی را برای SGML انجام داد و آن را سری "html" تعریف نمود که به سری‌سازی XML- مبتنی بر XHTML5 جایگزین منجر شد.
می‌۲۰۱۱
در ۱۴ فوریه ۲۰۱۱، W3C ویژگی گروه کاری HTML را پیشرفت داد و یک ساختار مشخص برای HTML5 ارائه کرد. در می‌۲۰۱۱ گروه کاری HTML5 پیشرفته را ارائه کرد که آخرین مورد بود و به دنبال آن بود که W3C خارجی را ارائه کند تا اینکه این ویژگی را به خوبی تعریف نماید. W3C آزمون جامعی را توسعه داد که در آن ویژگی‌های کامل به آن تا ۲۰۱۴ اضافه شد و اکنون این تاریخ هدفی برای توصیه‌ها شده بود.
نسخه‌های XHTML
XHTML یک زبان جداگانه است که به شکل فرمول بندی دوباره HTML 4.01 خود را نشان می‌دهد و از XML1.0 استفاده نموده‌است. اما به عنوان یک استاندارد جداگانه نمی‌توان از آن نام برد.
XHTML 1.0 در ۲۶ ژانویه ۲۰۰۰ انتشار یافت که به عنوان توصیه W3C از آن نام بده شد و پس از آن دوباره اصلاح شد و انتشار دوباره آن در اول اوت ۲۰۰۲ بود که در آن از سه نسخه یکسان به عنوان HTML 4.0 و ۴٫۰۱ استفاده شد و فرمول بندی دوباره آن در XML با محدودیت‌های خاص در نظر گرفته شد.
XHTML 1.1 در ۳۱ می‌۲۰۰۱ انتشار یافت که توصیه W3C محسوب شد. مبنای آن XHTML 1.0 بود ولی تغییرات اندکی در آن اعمال شده بود و فرمول بندی آن از ساختارهای تعدیل شده XHTML استفاده کرده بود که در ۱۰ آوریل ۲۰۰۱ انتشار یافته بود و توصیه W3C محسوب می‌گردید.
XHTML 2.0 یک نسخه پیش نویس کاری بود ولی در ۲۰۰۹ انتشار یافت که برای کارکرد مطلوب HTML5, XHTML5 بود. XHTML2.0 ناسازگاری‌هایی با XHTML1.X داشت و در نتیجه به شکل زبان جدید XHTML درآمد تا اینکه به روزرسانی آن تا XHTML 1.X صورت گیرد
XHTML Syntaxرا می‌توان به عنوان XHTML5.1 دانست که بر اساس آن HTML5 در پیش نویس HTML5 تعریف شده بود.
نشانه‌گذاری
نمونه زیر کد معروف Hello World است که معمولا برای مقایسه زبان‌های برنامه‌نویسی، زبان‌های اسکریپت‌نویسی و زبان‌های نشانه‌گذاری به کار می‌رود:
This is a title
Hello world!
عنصر اچ‌تی‌ام‌ال
نمونه عنصرهای اچ‌تی‌ام‌ال
سرتیترها: تگ‌های تا
Heading level 1
Heading level 2
Heading level 3
Heading level 4
Heading level 5
Heading level 6
پاراگراف‌ها:
Paragraph 1 Paragraph 2
خط شکن (پرش به خط بعد)
تفاوت میان یک تگ و
This is a paragraph with line breaks
برای ایجاد لینک از تگ استفاده می‌شود. برای مثال:
A link to Wikipedia!
ویژگی href آدرسی که لینک به آن اشاره می‌کند را در خود نگه می‌دارد.
کامنت‌ها:
کامنت‌ها در درک بیشتر کدها کمک می‌کنند و در صفحه وب به علت نادیده گرفتن آن‌ها توسط مرورگر دیده نمی‌شوند.
بردکرامب
شیوه‌نامه آبشاری
صفحه وب پویا
کدبندی نویسه‌ها در اچ‌تی‌ام‌ال
اچ‌تی‌ام‌ال۵
پروتکل انتقال ابرمتن
جاوااسکریپت
اس‌جی‌ام‌ال
اکس‌ام‌ال