HTML

HTML (ראשי תיבות באנגלית: Hyper Text Markup Language; בעברית: שְׂפַת סִימָנֵי עֲרִיכָה לְתַמְלִיל-עָל) היא שפת תגיות לתצוגה ועיצוב דפי אינטרנט ותוכן לתצוגה בדפדפן. זו שפת התגיות המרכזית בעולם האינטרנט, המהווה שלד למרבית עמודי התוכן באינטרנט. השפה מאפשרת עיצוב תוכן בצורה מהירה, קלה ללימוד באופן יחסי וקלה לכתיבה.

HTML תוכננה לעבוד על כל מחשב, מכל סוג והיא סלחנית מאוד לגבי פרטים קטנים. היא מותרת לשימוש על ידי כל מפתח אתרים, ללא צורך ברכישת זכויות יוצרים מחברה כלשהי, והיא ניתנת לקריאה בכל סוגי המערכות. HTML מאפשרת ליצור קישורים למסמכי HTML נוספים או לסוגים שונים של נתונים. כמו כן, היא תומכת במולטימדיה, היא מאפשרת להציג נתונים בעזרת: טקסט, צליל, תמונה, וידאו ועוד. HTML משמשת תקן ברשת האינטרנט וכלליה מוגדרים על ידי ארגון תקינה בין-לאומי, W3C. הגרסה הנוכחית של השפה היא HTML5.

HTML גם מאפשרת הטמעה של תסריטים בדף, למשל JavaScript, ובכך להשפיע על התנהגות הדף במצבים שונים, שילוב שפת תכנות זו מאפשרת יצירת אינטראקטיביות בין האתר למשתמש בו.

קובצי HTML נשמרים בסיומות "" ו-"".

== גרסאות ==
[[סמליל HTML5]]
{| class="wikitable"
|-
! גרסה
! הושק בתאריך
|-
! HTML 2.0
| נובמבר 1995
|-
! HTML 3.2
| 14 בינואר 1997
|-
! HTML 4.0
| 18 בדצמבר 1997
|-
! HTML 4.01
| 24 בדצמבר 1999
|-
! HTML5
| 28 באוקטובר 2014
|}

=== XHTML ===

לאחר יציאת תקן HTML 4.0 התמקדה עבודת הסטנדרטיזציה של ה־W3C בגרסת XML של HTML. זו נקראה XHTML. היא נועדה להיות מוגדרת בצורה יותר ברורה כדי לפשט פענוח אוטומטי של מסמך HTML על ידי תוכנות.

=== HTML5 ===

בשנת 2004 החליטו מספר יצרני דפדפנים (מוזילה, אופרה ואפל, מפתחת הדפדפן Safari) להקים קבוצת עבודה, בשם WHATWG, שתתאם את פיתוח התקן לכיוונים אשר נדרשים באתרי אינטרנט מודרניים. קבוצת העבודה החלה לעבוד על הרחבות לתקן HTML שנודעו בשם הכללי HTML5. בהמשך הצטרפו לקבוצה נציגים של יצרני דפדפנים מובילים אחרים (כגון גוגל ומיקרוסופט). התקן הגיע לשלב סופי ("המלצת W3C") בשנת 2014.

שינוי מהותי בין HTML5 לגרסתו הקודמת, הוא תוספת תגיות המתייחסות לתוכן המידע שבדף הרשת. לדוגמה – שימוש בתגית DIV על מנת לתחום אלמנטים של קוד הורחב לתגיות ייעודיות שנועדו לעיצוב כותרת עליונה, תחתונה, מאמר, תפריט ועוד. זאת, לצורך הקלה על יכולתן של מערכות ממוכנות, כגון מנועי חיפוש או קוראי מסך לעיוורים, להבין את התוכן המוצג. HTML 4, בהשוואה, הכיל אך ורק מידע הנוגע לאופי תצוגת דף האינטרנט ולא לתוכנו. בנוסף, נוספו תגיות המייצגות וידאו ואודיו, כדי לאפשר הפחתה של שימוש בתוספים חיצוניים על מנת להציג קובצי מולטימדיה.

== תגיות ==
התגיות הן הוראות בקרה שאינן מוצגות, ותפקידן לתת הוראות לדפדפן, כיצד לעצב ולסדר את התוכן במסמך.

=== חלוקת התגיות ===
ניתן לחלק את התגיות למספר קבוצות:
* תגיות מבניות, המתארות את תפקיד המלל במסמך, כמו תגיות שקובעות את סוג הקידוד, אזורי סקריפטים, וכדומה. לדוגמה: פירושו עבור הדפדפן – הצג את המלל "כלבי ים" ככותרת ראשית.
* תגיות תצוגה, שתפקידן לקבוע את האופן שבו יוצג המסך או חלקים ממנו, כמו סוג גופן, גודל גופן, צבע, צורת האותיות וכדומה. לדוגמה: יגרום לדפדפן להציג מלל מודגש. תגיות מסוג זה אינן חוקיות בגרסאות האחרונות של תקן HTML, ומומלץ להשתמש ב-CSS במקומן.
* קישורים, שתפקידם לקשר את הדף, בלחיצת עכבר, לדפים אחרים. לדוגמה: יצור קישור כזה: [http://he.wikipedia.org ויקיפדיה].
* תגיות המשמשות להצגת אובייקטים שונים, כגון תמונות, מדיה ופקדים. לדוגמה: יציג את התמונה a.png בתוך המסמך.
* תגיות המשמשות ליצירת טפסים.

=== מבנה התגיות ===
מבנה תגית ה-HTML דומה למבנה התגית ב-XML, ואפשר לתארו בצורה כללית:

התגית נפתחת תמיד ב שביניהם מופיע שם התגית (name בדוגמה), ולפעמים גם תכונות נוספות, באמצע מופיע התוכן (אם יש), וסוף התגית הוא , כלומר נוסף <code>/</code> לפני שם התגית.

במידה ותגית אינה מצריכה תוכן, כגון תגיות input,img,br – אז אין צורך להוסיף , במקומו מוסיפים את הסימן <code>/</code> בסוף התגית. לדוגמה: .

ניתן לחלק את התכונות הנוספות, שחלקן בגדר רשות ואת חלקן חובה לציין בתגיות מסוימות, לשתי קבוצות:
* ה-property שמופיע במבנה, הוא בעל ערך (ה-value).
* ה-method הוא תכונה בוליאנית, שערכה בעצם ציונה או אי-ציונה.

אפשר לציין יותר מתכונה אחת בתגית, בהתאם לתכונות הרלוונטיות לכל תגית.

=== עץ המסמך ===

דוגמה למדרג עצמים ב־DOM של מסמך HTML.
התגיות במסמך HTML מסודרות במבנה היררכי (של עץ) – המסמך מכיל ראש (head) וגוף (body). מבנה מסמך HTML בסיסי נראה כך:
<syntaxhighlight lang="html4strict">
<html>
	<head>
		<title>כותרת</title>
	</head>
	<body>
		תוכן הדף
	</body>
</html>
</syntaxhighlight>
* תגית ה-html היא התגית הראשית, שבתוכה נכתב מסמך ה-HTML.
* תגית ה-head היא התגית שמסמלת את ראש המסמך. תגית זו מיועדת לכותרת דף ה-HTML, למידע כללי על הדף, כותרת הדף, עיצובים ותסריטים.
* תגית ה-body היא התגית שמסמלת את גוף המסמך. בתגית זו נמצא תוכן המסמך.

כיוון שהמבנה היררכי, חשוב הקינון של התגיות (הסידור שלהן אחת בשנייה) לדוגמה: תהווה טעות, והצורה התקנית תהיה: .<ref>כל תגית שתחומה בתוך אזור של תגית אחרת נקראת הChild (ילד) של התגית שבתוכה היא נמצאת.

<code><nowiki><i><div>טקסט</div/></nowiki><nowiki><i></nowiki></code>

בדוגמה למעלה התגית "i" נמצאת בתוך התגית "div" ולכן התגית "i" נקראת הChild של התגית "div".</ref>

=== DOCTYPE ===
לפי התקן, דפי אינטרנט צריכים להכיל תגית DOCTYPE בתחילת הדף, על מנת להצהיר על גרסת ה-HTML של הדף. דוגמה למשפט כזה:
 המציין כי הדף נבנה באמצעות HTML 4.01.

=== ישויות HTML ===
ישות HTML (Entity reference) היא סימן טקסטי שלרוב אינו מופיע בא"ב של השפות השונות. מבנה של ישות HTML הוא כזה: <code dir="rtl">;name&</code> כאשר "name" הוא שם הישות. קובץ הגדרות המסמך של HTML 4 מצהיר על 252 ישויות HTML.

=== הערות ===
כמו בשפות תכנות רבות, גם ב־HTML ניתן לכתוב בקוד הערות, שמיועדות לתעד את הקוד ולעזור למתכנתים, אך אינן משפיעות על התצוגה. הערות ב־HTML מתחילות בתווים <code></code>.

== יצירת דפי HTML ==
דפי HTML נוצרים לרוב בצורה אוטומטית על ידי מערכות ניהול תוכן, אולם אפשר ליצור אותם גם בעזרת כל עורך טקסט (אפילו פנקס הרשימות של מערכת חלונות). ישנם גם לא מעט עורכי טקסט שמיועדים לעריכת דפי HTML. יש גם אפשרות לערוך דף HTML כמסמך מלל עשיר בממשק של מעבד תמלילים – אם בתוכנת מעבד תמלילים שיכולה לשמור את תוכנו של המסמך כמסמך HTML ואם זו מערכת ניהול תוכן שמספקת ממשק WYSIWYG לעריכת דפים.

==היסטוריה==
"האבא" (המקור) של HTML הוא תקן שנקרא SGML המיועד להעברת מסמכים אלקטרוניים וניהול מסמכים. זהו תקן בעל עושר תחבירי וגמישות, אבל זו הייתה ונשארה בעייתו הגדולה ביותר. רק מתכנת בעל רקע וניסיון יכול לעצב מסמך שיעמוד בחוקי התקן. לקחו מ-SGML מספר הגדרות ותגיות, הגדירו מספר מבנים פשוטים ויצרו את HTML, שהשימוש בו התפשט במהרה. HTML נכתבת בצורה של תגיות, התחומות בסוגריים משולשים. הדפדפן איננו מציג תגיות אלו, אלא משתמש בהן כדי לפרש כיצד להציג את תוכן הדף.

== מקורות ==
* מבוא לתכנות בסביבת אינטרנט – בהוצאת הוד עמי
* מבוא לתכנות בסביבת אינטרנט – בהוצאת "מבט לחלונות"

== ראו גם ==
* HTTP – פרוטוקול תקשורת שנועד להעברת דפי HTML על גבי רשת האינטרנט ורשתות אינטראנט
* גיליונות סגנון מדורגים (CSS)
* DOM
* Javascript – שפת תכנות שאחד משימושיה העיקריים הוא יצירת דפי HTML דינמיים
* אלמנט כתובת קנונית
* Blazor
* TinyMCE

== קישורים חיצוניים ==

* 
* [https://web.archive.org/web/20121010185022/http://docs.webplatform.org/wiki/html תיעוד תקן HTML] באתר [http://webplatform.org WebPlatform]
* [http://www.w3.org/TR/html4/ מפרט תקן HTML 4.01], אתר W3C
* [http://dev.w3.org/html5/spec/Overview.html הצעת טיוטה של מפרט תקן HTML5], אתר W3C
* [http://www.w3c.org אתר הבית של W3C]
* [http://www.mozilla.org.il/evangel.shtml על תקינה של HTML באתר mozilla.org.il]
* [http://www.w3.org/standards/webdesign/htmlcss תקני HTML באתר ה־W3C]
* [http://wiki.whatwg.org/wiki/FAQ שאלות נפוצות על WHATWG ו־HTML5] מאתר [https://whatwg.org/ WHATWG]
* [https://jsfeed.io/code/7oi8549545/online-html-editor HTML Code Editor]
* 
* 

== הערות שוליים ==

*
קטגוריה:תקנים בתקשורת מחשבים
קטגוריה:פיתוח יישומי ווב
קטגוריה:עיצוב אתרי אינטרנט
קטגוריה:תכנות