HTML
![]() |
Αυτό το λήμμα χρειάζεται μετάφραση.
Αν θέλετε να συμμετάσχετε, μπορείτε να επεξεργαστείτε το λήμμα μεταφράζοντάς το ή προσθέτοντας δικό σας υλικό και να αφαιρέσετε το {{μετάφραση}} μόλις το ολοκληρώσετε. Είναι πιθανό (και επιθυμητό) το ξενόγλωσσο κείμενο να έχει κρυφτεί σαν σχόλιο με τα <!-- και -->. Πατήστε "επεξεργασία" για να δείτε ολόκληρο το κείμενο. |
![]() |
Αυτό το λήμμα χρειάζεται μορφοποίηση ώστε να ανταποκρίνεται στις προδιαγραφές μορφοποίησης της Βικιπαίδειας. |
Η HTML (Hypertext Markup Language), στα Ελληνικά γλώσσα σήμανσης υπερκειμένου, είναι η τυπική γλώσσα σήμανσης για ιστοσελίδες που έχουν σχεδιαστεί για εμφάνιση σε πρόγραμμα περιήγησης ιστού. Καθορίζει το περιεχόμενο και τη δομή του περιεχομένου Ιστού. Συχνά υποστηρίζεται από τεχνολογίες όπως η Cascading Style Sheets (CSS) και γλώσσες δέσμης ενεργειών όπως η JavaScript.
Η HTML γράφεται υπό μορφή στοιχείων τα οποία αποτελούνται από ετικέτες (tags), οι οποίες περικλείονται μέσα σε σύμβολα «μεγαλύτερο από» και «μικρότερο από» (για παράδειγμα <html>
), μέσα στο περιεχόμενο της ιστοσελίδας. Οι ετικέτες HTML συνήθως λειτουργούν ανά ζεύγη (για παράδειγμα <h1>
και </h1>
), με την πρώτη να ονομάζεται ετικέτα έναρξης και τη δεύτερη ετικέτα λήξης (ή σε άλλες περιπτώσεις ετικέτα ανοίγματος και ετικέτα κλεισίματος αντίστοιχα). Ανάμεσα στις ετικέτες, οι σχεδιαστές ιστοσελίδων μπορούν να τοποθετήσουν κείμενο, πίνακες, εικόνες κλπ.
Ο σκοπός ενός περιηγητή ιστού (Web browser) είναι να διαβάζει τα έγγραφα HTML και να τα συνθέσει σε σελίδες που μπορεί κανείς να διαβάσει ή να ακούσει. Ο browser δεν εμφανίζει τις ετικέτες HTML, αλλά τις χρησιμοποιεί για να παρουσιάσει το περιεχόμενο της σελίδας.
Τα στοιχεία της HTML χρησιμοποιούνται για να κτίσουν όλους του ιστότοπους. Η HTML επιτρέπει την ενσωμάτωση εικόνων και άλλων αντικειμένων μέσα στη σελίδα, και μπορεί να χρησιμοποιηθεί για να εμφανίσει διαδραστικές φόρμες. Παρέχει τις μεθόδους δημιουργίας δομημένων εγγράφων (δηλαδή εγγράφων που αποτελούνται από το περιεχόμενο που μεταφέρουν και από τον κώδικα μορφοποίησης του περιεχομένου) καθορίζοντας δομικά σημαντικά στοιχεία για το κείμενο, όπως κεφαλίδες, παραγράφους, λίστες, συνδέσμους, παραθέσεις και άλλα. Μπορούν επίσης να ενσωματώνονται σενάρια εντολών σε γλώσσες όπως η JavaScript, τα οποία επηρεάζουν τη συμπεριφορά των ιστοσελίδων HTML και από στατικές τις κάνουν διαδραστικές.
Οι Web browsers μπορούν επίσης να αναφέρονται σε στυλ μορφοποίησης CSS για να ορίζουν την εμφάνιση και τη διάταξη του κειμένου και του υπόλοιπου υλικού. Η Κοινοπραξία του Παγκοσμίου Ιστού, ο οποίος δημιουργεί και συντηρεί τα πρότυπα για την HTML και τα CSS, ενθαρρύνει τη χρήση των CSS αντί διαφόρων στοιχείων της HTML για σκοπούς παρουσίασης του περιεχομένου.[1]
Ιστορία
[Επεξεργασία | επεξεργασία κώδικα]![](http://upload.wikimedia.org/wikipedia/commons/2/2b/HTML-old.gif)
Προέλευση
[Επεξεργασία | επεξεργασία κώδικα]![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/c8/Tim_Berners-Lee_April_2009.jpg/170px-Tim_Berners-Lee_April_2009.jpg)
Το 1980, ο φυσικός Τιμ Μπέρνερς Λι, ο οποίος εργαζόταν στο CERN, επινόησε το ENQUIRE, ένα σύστημα χρήσης και διαμοιρασμού εγγράφων για τους ερευνητές του CERN, και κατασκεύασε ένα πρωτότυπό του. Αργότερα, το 1989, πρότεινε ένα σύστημα βασισμένο στο διαδίκτυο, το οποίο θα χρησιμοποιούσε υπερκείμενο.[2] Έτσι, έφτιαξε την προδιαγραφή της HTML και έγραψε τον browser και το λογισμικό εξυπηρετητή στα τέλη του 1990. Τον ίδιο χρόνο, ο Μπέρνερς Λι και ο μηχανικός συστημάτων πληροφορικής του CERN Robert Cailliau συνεργάστηκαν σε μια κοινή προσπάθεια εύρεσης χρηματοδότησης, αλλά το έργο δεν υιοθετήθηκε ποτέ επίσημα από το CERN. Στις προσωπικές του σημειώσεις από το 1990[3], ο Μπέρνερς Λι αριθμεί «μερικές από τις πολλές χρήσεις του υπερκειμένου», όπως την γενική παρουσίαση πληροφοριών (π.χ. μια εγκυκλοπαίδεια), στοχευμένη δημοσίευση (κείμενα βοήθειας, τεκμηρίωσης, εκπαίδευσης, κλπ) μέχρι ακόμα και για καταγραφή προσωπικών σημειώσεων.[4]
Πρώτες προδιαγραφές
[Επεξεργασία | επεξεργασία κώδικα]Η πρώτη δημόσια διαθέσιμη περιγραφή της HTML ήταν ένα έγγραφο με το όνομα Ετικέτες HTML, το οποίο πρωτοαναφέρθηκε στο Διαδίκτυο από τον Μπέρνερς Λι στα τέλη του 1991[5][6]. Περιέγραφε τα 20 στοιχεία τα οποίο αποτελούσαν τον αρχικό και σχετικά απλό σχεδιασμό της HTML. Εκτός από την ετικέτα υπερσυνδέσμου, οι υπόλοιπες ήταν έντονα επηρεασμένες από την SGMLguid, μια μορφή δημιουργίας τεκμηρίωσης, φτιαγμένη στο CERN και βασισμένη στην SGML. Δεκατρία από εκείνα τα αρχικά στοιχεία υπάρχουν ακόμα σήμερα στην HTML 4.[7]
Το ίδιο το πρότυπο SGML αναπαράγει μερικές από τις τεχνικές των τυπογράφων, αλλά εκτός από απλή μίμηση της τυπογραφίας προσθέτει γενικευμένη σήμανση βασισμένη σε στοιχεία, τα οποία μπορούν να εμφωλεύονται το ένα μέσα στο άλλο και να φέρουν ιδιότητες. Ακόμα, το SGML διαχωρίζει τη δομή από το περιεχόμενο, κατεύθυνση προς την οποία αργότερα κινήθηκε και η HTML, με τα CSS. Πολλά από τα στοιχεία κειμένου προέρχονται από την τεχνική αναφορά ISO TR 9537, Techniques for using SGML (τεχνικές χρήσης της SGML), η οποία με τη σειρά της καλύπτει τα χαρακτηριστικά των πρώιμων γλωσσών μορφοποίησης κειμένου που χρησιμοποιούνταν από τα TYPSET και RUNOFF, και είχαν αναπτυχθεί στις αρχές της δεκαετίας του 1960 για το λειτουργικό σύστημα CTSS.
Ο Μπέρνερς Λι θεώρησε την HTML ως μια υλοποίηση του SGML. Αυτό ορίστηκε και επίσημα από το Internet Engineering Task Force (IETF) με τη δημοσίευση της πρώτης πρότασης για μια προδιαγραφή της HTML, στα μέσα του 1993[8], η οποία περιλάμβανε και έναν Ορισμό τύπου εγγράφου (DTD, Document Type Definition) της SGML, ο οποίος όριζε την γραμματική[9]. Αυτό το πρόχειρο έληξε μετά την πάροδο έξι μηνών, αλλά περιέχει κάτι αξιοσημείωτο: την αναγνώριση της ετικέτας του NCSA Mosaic για την ενσωμάτωση εικόνων μέσα στο κείμενο, η οποία αντικατοπτρίζει την φιλοσοφία του IETF για ενσωμάτωση επιτυχημένων πρωτότυπων μέσα στα πρότυπα.[10] Κάτι παρόμοιο περιείχε και το ανταγωνιστικό πρόχειρο του Dave Raggett, «HTML+ (Hypertext Markup Format)», από τα τέλη του, το οποίο πρότεινε την προτυποποίηση μερικών ήδη υλοποιημένων δυνατοτήτων, όπως οι πίνακες και οι φόρμες[11].
Μετά την λήξη των πρόχειρων HTML και HTML+, στις αρχές του 1994, το IETF δημιούργησε την Ομάδα Εργασίας για την HTML, η οποία το 1995 ολοκλήρωσε την «HTML 2.0», με την πρόθεση να αποτελέσει την πρώτη προδιαγραφή πάνω στην οποία θα βασίζονταν οι μελλοντικές υλοποιήσεις.[10] Η HTML 2.0 δημοσιεύτηκε ως RFC 1866[12], και περιείχε ιδέες από τα πρόχειρα HTML και HTML+.[13] Η αρίθμηση 2.0 σκόπευε απλά να ξεχωρίσει την νέα έκδοση από τα πρόχειρα που προηγήθηκαν.[14]
Η περαιτέρω ανάπτυξη κάτω από την επίβλεψη του IETF καθυστέρησε λόγω σύγκρουσης απόψεων. Από το 1996 και μετά, οι προδιαγραφές της HTML τηρούνται, μαζί με την σύμφωνη γνώμη των δημιουργών του λογισμικού, από το World Wide Web Consortium (W3C).[15] Ωστόσο, το 2000 η HTML έγινε επίσης παγκόσμιο πρότυπο (ISO/IEC 15445:2000). Η τελευταία προδιαγραφή της HTML, η HTML 4.01 δημοσιεύτηκε από το W3C το 1999, και το 2001 δημοσιεύτηκαν επίσης και τα λάθη και οι παραλείψεις της (errata).
Ιστορικό εκδόσεων του προτύπου
[Επεξεργασία | επεξεργασία κώδικα]Χρονικό εκδόσεων HTML
[Επεξεργασία | επεξεργασία κώδικα]- 24 Νοεμβρίου 1995
- Η HTML 2.0 δημοσιεύτηκε ως IETF RFC 1866.[12] Επιπλέον συμπληρωματικά RFC πρόσθεσαν δυνατότητες:
- 25 Νοεμβρίου 1995: RFC 1867 (ανέβασμα αρχείο από φόρμα)
- Μάιος 1996: RFC 1942 (πίνακες)
- Αύγουστος 1996: RFC 1980 (πελατοκεντικοί χάρτες εικόνων (client-side))
- Ιανουάριος 1997: RFC 2070 (διεθνοποίηση και τοπικοποίηση)
- Τον Ιούνιο του 2000, όλα τα ανωτέρω χαρακτηρίστηκαν ως ξεπερασμένα ή ιστορικά, από το RFC 2854.
- Ιανουάριος 1997
- Η HTML 3.2[16] δημοσιεύτηκε ως Σύσταση από το W3C. Ήταν η πρώτη έκδοση που αναπτύχθηκε και προτυποποιήθηκε αποκλειστικά από το W3C, μια που το IETF έκλεισε την Ομάδα Εργασίας για την HTML τον Σεπτέμβριο του 1996.[17]
- Στην HTML 3.2 αφαιρέθηκαν εντελώς οι μαθηματικοί τύποι και οι υπερκαλύψεις που προέρχονταν από επεκτάσεις του προτύπου από τρίτους φορείς. Υιοθετήθηκαν οι περισσότερες από τις ετικέτες οπτικής διαμόρφωσης του Netscape αλλά παραλείφθηκαν οι ετικέτες blink του Netscape και marquee της Microsoft, μετά από κοινή συναίνεση και των δύο εταιρειών.[15] Για να συμπληρωθεί το κενό από την αφαίρεση της δυνατότητας αναπαράστασης μαθηματικών τύπων, προτυποποιήθηκε το MathML 14 μήνες αργότερα.
- Δεκέμβριος 1997
- Δημοσιεύτηκε η HTML 4.0[18] από το W3C, ως Σύστηση. Παρείχε τρεις εκδοχές:
- την Strict, στην οποία απαγορεύεται η χρήση ξεπερασμένων στοιχείων,
- την Transitional, στην οποία επιτρέπονται τα ξεπερασμένα στοιχεία,
- την Frameset, στην οποία επιτρέπονται μόνο στοιχεία frame.
- Αρχικά η έκδοση είχε το κωδικό όνομα «Cougar,[19] Η HTML 4.0 υιοθέτησε πολλά στοιχεία και ιδιότητες που προηγουμένως χρησιμοποιούνταν μόνο από συγκεκριμένους browser, αλλά ταυτόχρονα προσέβλεπε στην σταδιακή κατάργηση των δυνατοτήτων οπτικής διαμόρφωσης του Netscape, σημειώνοντάς τις ως ξεπερασμένες, και προτείνοντας τα CSS στη θέση τους. Η HTML 4 είναι μια εφαρμογή του SGML, σύμφωνη με το πρότυπο ISO 8879 - SGML.[20]
- Απρίλιος 1998
- Επανεκδίδεται η HTML 4.0[21] με μικρές αλλαγές, χωρίς να αλλάξει ο αριθμός έκδοσης.
- Δεκέμβριος 1999
- Δημοσιεύεται ως Σύσταση του W3C η HTML 4.01[22]. Προσέφερε τις ίδιες τρεις εκδοχές με την HMTL 4.0. Τα πιο πρόσφατα λάθη και παραλείψεις (errata) δημοσιεύτηκαν στις 12 Μαΐου 2001.[23]
- Μάιος 2000
- Με το ISO/IEC 15445:2000[24][25] προτυποποιείται η ISO HTML, βασισμένη στην HTML 4.01 Strict, ως διεθνές πρότυπο ISO/IEC. Αυτό το πρότυπο εμπίπτει στον τομέα του ISO/IEC JTC1/SC34 για τις γλώσσες περιγραφής και επεξεργασίας εγγράφων.[24]
- Από τα μέσα του 2008, η HTML 4.01 και το ISO/IEC 15445:2000 είναι οι πιο πρόσφατες εκδόσεις της HTML. Παράλληλα αναπτύχθηκε η XHTML, βασισμένη στην XML, η οποία απασχόλησε την Ομάδα Εργασίας του W3C για την HTML από την αρχή μέχρι τα μέσα της δεκαετίας του 2000.
Χρονικό εκδόσεων πρόχειρων της HTML
[Επεξεργασία | επεξεργασία κώδικα]![](http://upload.wikimedia.org/wikipedia/commons/thumb/6/61/HTML5_logo_and_wordmark.svg/220px-HTML5_logo_and_wordmark.svg.png)
- Οκτώβριος 1991
- Πρώτη δημοσίευση του HTML Tags,[5] ενός ανεπίσημου εγγράφου του CERN αναφέρει δώδεκα ετικέτες HTML.
- Ιούνιος 1992
- Πρώτο ανεπίσημο πρόχειρο του HTML DTD,[26] με επτά[27][28][29] αναθεωρήσεις (15 Ιουλίου, 6 Αυγούστου, 18 Αυγούστου, 17 Νοεμβρίου, 19 Νοεμβρίου, 20 Νοεμβρίου, 22 Νοεμβρίου)
- Νοέμβριος 1992
- Ανεπίσημο πρόχειρο HTML DTD 1.1 (το πρώτο με αριθμό έκδοσης, βασισμένο στις αναθεωρήσεις RCS, οι οποίες ξεκινούν με 1.1 αντί για 1.0)[29]
- Ιούνιος 1993
- Δημοσιεύεται η Hypertext Markup Language[30] από την Ομάδα Εργασίας IIIR του IETF ως ένα πρόχειρο για το Διαδίκτυο (κάτι σαν εισήγηση για πρότυπο). Αντικαταστάθηκε από μια δεύτερη έκδοση[31] ένα μήνα αργότερα, ακολουθούμενη από έξι ακόμα πρόχειρα δημοσιευμένα από το ίδιο το IETF[32] τα οποία τελικά οδήγησα στην HTML 2.0 με το RFC1866.
- Νοέμβριος 1993
- Δημοσιεύτηκε η HTML+ από το IETF ως Πρόχειρο-Διαδικτύου, και ως ανταγωνιστική πρόταση για το πρόχειρο της Hypertext Markup Language. Έληξε τον Μάιο του 1994.
- Απρίλιος 1995 (γραμμένη τον Μάρτιο του 1995)
- Η HTML 3.0[33] προτάθηκε ως πρότυπο από το IETF, αλλά η πρόταση έληξε πέντε μήνες αργότερα χωρίς άλλη ενεργεια. Περιείχε πολλές από τις δυνατότητες που συμπεριλαμβάνονταν στην πρόταση του Raggett για την HTML+, όπως την υποστήριξη για πίνακες, τη ροή κειμένου γύρω από εικόνες και την προβολή πολύπλοκων μαθηματικών τύπων.[34]
- Το W3C ξεκίνησε την ανάπτυξη του δικού του Arena browser ως δοκιμαστική πλατφόρμα για την HTML 3 και για τα CSS[35][36][37] αλλά η HTML 3.0 δεν πέτυχε, για διάφορους λόγους. Το πρόχειρο θεωρήθηκε υπερβολικά μακρύ, με 150 σελίδες, και ο ρυθμός ανάπτυξης του browser, καθώς και ο αριθμός των ενδιαφερόμενων μερών υπερέβαιναν τις δυνατότητες του IETF.[15] Οι εταιρείες που διέθεταν browser, συμπεριλαμβανομένων των Microsoft και Netscape εκείνο τον καιρό, επέλεξαν να υλοποιήσουν διαφορετικά υποσύνολα των δυνατοτήτων του πρόχειρου της HTML 3, καθώς και να εισάγουν τις δικές του επεκτάσεις σ' αυτό.[15] Οι επεκτάσεις αυτές έλεγχαν εμφανισιακά στοιχεία των εγγράφων, αντίθετα με την «πεποίθηση [της ακαδημαϊκής κοινότητας μηχανικών] ότι το χρώμα, το παρασκήνιο, το μέγεθος και ο τύπος της γραμματοσειράς ήταν οπωσδήποτε έξω από το στόχος μιας γλώσσας της οποίας η μοναδική πρόθεση ήταν να καθορίσει πώς οργανώνεται ένα έγγραφο.»[15] Ο Dave Raggett, συνεργάτης του W3C για πολλά χρόνια, σχολίασε ότι «Μέχρι ενός σημείο, η Microsoft έκτισε την επιχειρηματική της δραστηριότητα στον Ιστό επεκτείνοντας τις δυνατότητες της HTML.»[15]
- Ιανουάριος 2008
- Δημοσιεύεται η HTML5 ως ένα Πρόχειρο Εργασίας από το W3C.[38]
- Παρότι η σύνταξη μοιάζει αρκετά με το SGML, η HTML5 δεν προσπαθεί πλέον να αποτελεί εφαρμογή του SGML, και ορίζεται ως αυτόνομη, μαζί με την XHTML5 η οποία βασίζεται στην XML.[39]
Εκδόσεις της XHTML
[Επεξεργασία | επεξεργασία κώδικα]Η XHTML είναι ξεχωριστή γλώσσα η οποία ως αναδιαμόρφωση της HTML 4.01 με χρήση της XML 1.0. Συνεχίζει να αναπτύσσεται:
- XHTML 1.0,[40] δημοσιεύτηκε στις 26 Ιανουαρίου 2000, ως Σύσταση του W3C, μετά αναθεωρήθηκε και επανεκδόθηκε στις 1 Αυγούστου 2002. Προσφέρει τις ίδιες τρεις εκδοχές όπως η HTML 4.0 και 4.01, αναδιαμορφωμένες ως XML, με μικρούς περιορισμούς.
- XHTML 1.1,[41] δημοσιεύτηκε στις 31 Μαΐου 2001, ως Σύσταση του W3C. Βασίζεται στην XHTML 1.0 Strict, αλλά περιέχει μικρές αλλαγές, μπορεί να παραμετροποιηθεί, μπορεί να αναμορφωθεί χρησιμοποιώντας Αρθρώματα της XHTML, τα οποία δημοσιεύτηκαν στις 10 Απριλίου 2001, ως Σύσταση του W3C.
- XHTML 2.0,.[42][43] Δεν υπάρχει πρότυπο XHTML 2.0, είναι ένα πρόχειρο έγγραφο και θεωρείται ακόμα έργο σε εξέλιξη. Η XHTML 2.0 δεν είναι συμβατή με την XHTML 1.x και επομένως μπορεί πιο σωστά να χαρακτηριστεί ως μια νέα γλώσσα που είναι εμπνευσμένη από την XHTML παρά ως αναβάθμιση της υπάρχουσας XHTML 1.x.
- XHTML5, είναι αναβάθμιση της XHTML 1.x, και εξελίσσεται παράλληλα με την HTML5 στο ίδιο πρόχειρο.[44]
Σήμανση
[Επεξεργασία | επεξεργασία κώδικα]Η σήμανση HTML αποτελείται από μερικά βασικά συστατικά, συμπεριλαμβανομένων των στοιχείων (και των ιδιοτήτων τους), τους βασισμένους σε χαρακτήρες τύπους δεδομένων, τις αναφορές χαρακτήρων και τις αναφορές οντοτήτων. Ένα ξεχωριστό σημαντικό συστατικό είναι η δήλωση τύπου εγγράφου (document type declaration), η οποία ορίζει στο πρόγραμμα περιήγησης (browser) τον τρόπο εμφάνισης της σελίδας.
Στην HTML, το πρόγραμμα Hello world, ένα συνηθισμένο πρόγραμμα υπολογιστή που χρησιμεύει για τη σύγκριση γλωσσών προγραμματισμού, γλωσσών σεναρίων και γλωσσών σήμανσης, φτιάχνεται με 9 γραμμές κώδικα, παρότι οι νέες γραμμές είναι προαιρετικές στην HTML:
<!DOCTYPE html>
<html>
<head>
<title>Hello HTML</title>
</head>
<body>
<p>Hello world</p>
</body>
</html>
(Το κείμενο ανάμεσα στο <html>
και το </html>
περιγράφει την ιστοσελίδα, και το κείμενο μεταξύ του <body>
και του </body>
είναι το ορατό μέρος της. Το σημασμένο κείμενο <title>Hello HTML</title>
καθορίζει τον τίτλο που θα εμφανίζεται στην μπάρα τίτλου του browser.)
Η δήλωση τύπου εγγράφου (το <!DOCTYPE html>) στον πιο πάνω κώδικα είναι για την HTML5. Αν δεν συμπεριλαμβάνεται η δήλωση <!doctype html>
, τότε μερικοί browser θα καταφύγουν στην λειτουργία quirks για την εμφάνιση της σελίδας.[45]
Στοιχεία
[Επεξεργασία | επεξεργασία κώδικα]Τα έγγραφα HTML αποτελούνται από στοιχεία HTML τα οποία στην πιο γενική μορφή τους έχουν τρία συστατικά: ένα ζεύγος από ετικέτες, την «ετικέτα εκκίνησης» και την «ετικέτα τερματισμού», μερικές ιδιότητες μέσα στην ετικέτα εκκίνησης, και τέλος το κείμενο ή το γραφικό περιεχόμενο μεταξύ των ετικετών, το οποίο μπορεί να περιλαμβάνει και άλλα στοιχεία εμφωλευμένα μέσα του. Το στοιχείο HTML μπορεί να είναι οτιδήποτε ανάμεσα στις ετικέτες εκκίνησης και τερματισμού. Τέλος, κάθε ετικέτα περικλείεται σε σύμβολα «μεγαλύτερο από» και «μικρότερο από», δηλαδή < και >.
Επομένως, η γενική μορφή ενός στοιχείου HTML είναι: <ετικέτα ιδιότητα1="τιμή1" ιδιότητα2="τιμή2">περιεχόμενο</ετικέτα>
. Μερικά στοιχεία HTML περιγράφονται ως άδεια ή κενά στοιχεία, έχουν τη μορφή <ετικέτα ιδιότητα1="τιμή1" ιδιότητα2="τιμή2">
, και δεν έχουν καθόλου περιεχόμενο. Το όνομα κάθε στοιχείου HTML είναι το ίδιο όνομα που χρησιμοποιείται στις αντίστοιχες ετικέτες. Το όνομα της ετικέτας τερματισμού ξεκινά με μια πλάγια «/», η οποία παραλείπεται στα άδεια στοιχεία. Τέλος, αν δεν αναφέρονται ρητά οι ιδιότητες ενός στοιχείου, τότε χρησιμοποιούνται οι προεπιλογές σε κάθε περίπτωση.
Παραδείγματα στοιχείων
[Επεξεργασία | επεξεργασία κώδικα]Κεφαλίδα του εγγράφου HTML: <head>...</head>
. Συνήθως περιέχει τον τίτλο, π.χ.:
<head>
<title>Ο τίτλος</title>
</head>
Επικεφαλίδες: οι επικεφαλίδες στην HTML ορίζονται με τις ετικέτες <h1>
έως <h6>
:
<h1>Επικεφαλίδα1</h1>
<h2>Επικεφαλίδα2</h2>
<h3>Επικεφαλίδα3</h3>
<h4>Επικεφαλίδα4</h4>
<h5>Επικεφαλίδα5</h5>
<h6>Επικεφαλίδα6</h6>
Παράγραφοι:
<p>Παράγραφος 1</p> <p>Παράγραφος 2</p>
Αλλαγή γραμμής: <br>
. Η διαφορά ανάμεσα στο <br>
και το <p>
είναι ότι το «br» αλλάζει γραμμή χωρίς να αλλάζει την σημαντική δομή της σελίδας, ενώ το «p» τεμαχίζει τη σελίδα σε παραγράφους. Το «br» είναι ένα άδειο στοιχείο, δηλαδή δεν έχει περιεχόμενο, ούτε και χρειάζεται ετικέτα τερματισμού.
<p>Αυτή <br> είναι μία παράγραφος <br> με <br> αλλαγές γραμμής</p>
Αυτός είναι ένας σύνδεσμος σε HTML: Για τη δημιουργία του χρησιμοποιείται η ετικέτα <a>
. Η ιδιότητα href
περιέχει τη σελίδα προορισμού του συνδέσμου.
<a href="http://el.wikipedia.org/">Ένας σύνδεσμος στη Βικιπαίδεια!</a>
Σχόλια:
<!-- Αυτό είναι ένα σχόλιο -->
Τα σχόλια μπορούν να βοηθήσουν στην κατανόηση της σήμανσης. Δεν εμφανίζονται στην ιστοσελίδα.
Υπάρχουν διάφοροι τύποι στοιχείων στην HTML.
- Η δομική σήμανση περιγράφει τον σκοπό του κειμένου
- Για παράδειγμα, το
<h2>Golf</h2>
σημαίνει ότι η λέξη «Golf» θα είναι μια επικεφαλίδα δεύτερου επιπέδου. Η δομική σήμανση δεν εμπεριέχει συγκεκριμένο τρόπο εμφάνισης, αλλά οι περισσότεροι φυλλομετρητές έχουν δικό τους προκαθορισμένο τρόπο για τη μορφοποίηση όλων των στοιχείων. Το περιεχόμενο μπορεί να μορφοποιηθεί οπτικά με τη χρήση των CSS. - Η σήμανση οπτικής μορφοποίησης περιγράφει την εμφάνιση του κειμένου, άσχετα από τον σκοπό του.
- Για παράδειγμα το
<b>έντονο κείμενο</b>
υποδεικνύει ότι οι συσκευές που θα εμφανίσουν το κείμενο θα το κάνουν έντονο, αλλά δεν λέει τι θα κάνουν με το κείμενο οι συσκευές που δεν μπορούν να το εμφανίσουν, όπως για παράδειγμα οι συσκευές φωνητικής ανάγνωσης σελίδων. Τόσο στην περίπτωση του<b>έντονου</b>
όσο και του<i>πλάγιου</i>
, υπάρχουν άλλα στοιχεία τα οποία μπορεί οπτικά να εμφανίζονται ίδια, αλλά είναι πιο σημαντικά, όπως τo<strong>σημαντικό κείμενο</strong>
και το<em>κείμενο με έμφαση</em>
αντίστοιχα. Είναι ευκολότερο να ερμηνεύσει ένας φωνητικός φυλλομετρητής τα τελευταία δύο στοιχεία. Ωστόσο, δεν είναι ισότιμα με τα αντίστοιχα στοιχεία οπτικής μορφοποίησης. Για παράδειγμα ένα πρόγραμμα φωνητικής ανάγνωσης της σελίδας δεν θα πρέπει να προφέρει με έμφαση τον τίτλο ενός βιβλίου, αλλά όταν το ίδιο περιεχόμενο εμφανίζεται σε μια οθόνη τότε ο τίτλος θα είναι με πλάγια γράμματα. Τα περισσότερα στοιχεία οπτικής μορφοποίησης έχουν θεωρηθεί ξεπερασμένα μετά την προδιαγραφή HTML 4.0, και έχουν αντικατασταθεί από τα CSS. - Η σήμανση υπερκειμένου κάνει μερικά τμήματα ενός εγγράφου να συνδέουν με άλλα έγγραφα.
- Το στοιχείο anchor δημιουργεί έναν υπερσύνδεσμο στο έγγραφο, και η ιδιότητα
href
ορίζει τον στόχο του συνδέσμου. Για παράδειγμα, η σήμανση HTML<a href="http://el.wikipedia.org">Βικιπαίδεια</a>
εμφανίζει το κείμενο «Βικιπαίδεια» ως υπερσύνδεσμο. Για την εμφάνιση μιας εικόνας ως συνδέσμου, μπορεί να εισαχθεί ένα στοιχείο «img» ως περιεχόμενο του στοιχείου «a». Όπως και το «br», το «img» είναι άδειο στοιχείο. Έχει ιδιότητες αλλά δεν έχει περιεχόμενο, ούτε ετικέτα τερματισμού:<a href="http://example.org">
.<img src="image.gif" alt="Κείμενο περιγραφής" width="50" height="50" border="0">
</a>
Ιδιότητες
[Επεξεργασία | επεξεργασία κώδικα]Οι περισσότερες ιδιότητες των στοιχείων είναι ζεύγη ονομάτων και τιμών, τα οποία διαχωρίζονται με ένα «=» και γράφονται μέσα στην ετικέτα εκκίνησης ενός στοιχείου, μετά το όνομα του στοιχείου. Η τιμή μπορεί να περικλείεται σε μονά ή διπλά εισαγωγικά, παρότι τιμές που αποτελούνται από συγκεκριμένους χαρακτήρες μπορούν να γράφονται χωρίς εισαγωγικά στην HTML, αλλά όχι στην XHTML.[46][47] Το να μένουν οι τιμές των ιδιοτήτων χωρίς εισαγωγικά θεωρείται ανασφαλές.[48] Εκτός από τις ιδιότητες που γράφονται ως ζεύγη ονομάτων και τιμών, υπάρχουν και μερικές οι οποίες επηρεάζουν το στοιχείο απλά με την παρουσία τους μέσα στην ετικέτα εκκίνησης,[5] όπως η ιδιότητα ismap
του στοιχείου img
.[49]
Υπάρχουν και μερικές κοινές ιδιότητες οι οποίες εμφανίζονται σε πολλά στοιχεία:
- Η ιδιότητα
id
παρέχει ένα αναγνωριστικό για ένα στοιχείο το οποίο είναι μοναδικό σε ολόκληρο το έγγραφο. Χρησιμοποιείται για να ταυτοποιεί το στοιχείο ώστε τα CSS να μπορούν να αλλάξουν τον τρόπο που αυτό εμφανίζεται, καθώς και τα σενάρια μπορούν να αλλάξουν, να μετακινήσουν ή να διαγράψουν τα περιεχόμενα ή την εμφάνισή του. Ακόμα, αν έναid
προστεθεί στο URL μιας σελίδας, παρέχει ένα μοναδικό αναγνωριστικό για ένα τμήμα της σελίδας, για παράδειγμα:http://el.wikipedia.org/wiki/HTML#Ιδιότητες
- Η ιδιότητα
class
παρέχει τη δυνατότητα ταξινόμησης παρόμοιων αντικειμένων στην ίδια κλάση. Μπορεί να χρησιμοποιηθεί για να να αποδώσει κάποια σημασία στο στοιχείο, ή για σκοπούς εμφάνισης. Για παράδειγμα, ένα έγγραφο HTML μπορεί να χρησιμοποιεί την επισήμανσηclass="notation"
σε μερικά στοιχεία για να ξεχωρίσει από το υπόλοιπο κείμενο του εγγράφου. Κατά την εμφάνιση του εγγράφου, αυτά τα στοιχεία μπορεί -για παράδειγμα- να εμφανίζονται όλα μαζί στο τέλος της σελίδας ως υποσημειώσεις, άσχετα με την θέση που εμφανίζονται μέσα στον κώδικα. Επίσης οι ιδιότητες class χρησιμοποιούνται σημασιολογικά στα microformat. Ένα στοιχείο μπορεί να έχει πολλαπλές κλάσεις, για παράδειγμα τοclass="notation important"
βάζει το στοιχείο τόσο στην κλάση «notation» όσο και στην «important». - Η ιδιότητα
style
εφαρμόζει στυλ εμφάνισης σε συγκεκριμένα στοιχεία. Θεωρείται καλύτερη τακτική να χρησιμοποιούνται οι ιδιότητεςid
ήclass
ώστε να επιλέγεται το στοιχείο μέσα σε ένα CSS, αλλά μερικές φορές μπορεί να είναι πιο απλό να ανατεθούν style κατευθείαν στο στοιχείο. - Η ιδιότητα
title
προσθέτει μια εξήγηση στο στοιχείο στο οποίο εφαρμόζεται. Στους περισσότερους φυλλομετρητές αυτή η ιδιότητα εμφανίζεται ως αναδυόμενο παράθυρο βοήθειας (tooltip). - Η ιδιότητα
lang
ταυτοποιεί την φυσική γλώσσα των περιεχομένων του στοιχείου, η οποία μπορεί να είναι διαφορετική από το υπόλοιπο έγγραφο. Για παράδειγμα, μέσα σε ένα έγγραφο μπορεί να υπάρχει το κείμενο:<p>Τι να κάνουμε; <span lang="fr">c'est la vie</span>, όπως λένε και οι Γάλλοι.</p>
Το στοιχείο abbr
μπορεί να χρησιμοποιηθεί για να επιδείξει μερικές από τις πιο πάνω ιδιότητες:
<abbr id="anId" class="jargon" style="color:purple;" title="Hypertext Markup Language">HTML</abbr>
Αυτό το παράδειγμα εμφανίζεται ως: HTML. Στους περισσότερους φυλλομετρητές, όταν σταθεί ο δείκτης του ποντικιού πάνω από αυτό το στοιχείο, τότε θα εμφανιστεί ένα αναδυόμενο παράθυρο με το περιεχόμενο «Hypertext Markup Language».
Τα περισσότερα στοιχεία μπορούν επίσης να δεχτούν την ιδιότητα dir
η οποία καθορίζει την κατεύθυνση του κειμένου. Η τιμή «rtl» της ιδιότητας, δείχνει κείμενο που διαβάζεται από δεξιά προς τα αριστερά, όπως για παράδειγμα στα Αραβικά, στα Περσικά ή στα Εβραϊκά.[50]
Αναφορές οντοτήτων χαρακτήρων
[Επεξεργασία | επεξεργασία κώδικα]Από την έκδοση 4.0 και μετά, στην HTML ορίζεται ένα σύνολο από 252 αναφορές οντοτήτων χαρακτήρων και ένα σύνολο από 1.114.050 αναφορές οντοτήτων αριθμών. Και τα δύο σύνολα επιτρέπουν τη γραφή μοναδικών χαρακτήρων ως σήμανση, αντί χρησιμοποιώντας τους ίδιους τους χαρακτήρες. Ένας χαρακτήρας και η αντίστοιχη σήμανση γι' αυτόν θεωρούνται ισοδύναμες οντότητες, και εμφανίζονται ίδια.
Αυτή η δυνατότητα διαφυγής χαρακτήρων με αυτόν τον τρόπο επιτρέπει την ερμηνεία χαρακτήρων όπως <
και &
(όταν γράφονται ως <
και &
, αντίστοιχα) ως κείμενο και όχι ως σήμανση. Για παράδειγμα, ο χαρακτήρας <
κανονικά σημαίνει την έναρξη μιας ετικέτας, και το &
σημαίνει την έναρξη μιας αναφοράς οντότητας χαρακτήρα ή αριθμού. Η γραφή τους ως &
ή &
ή &
επιτρέπει στο &
να συμπεριλαμβάνεται μέσα στο περιεχόμενο ενός στοιχείου ή μέσα στην τιμή μιας ιδιότητας. Επίσης, ο χαρακτήρας διπλών εισαγωγικών ("
), ο οποίος χρησιμοποιείται για να περιβάλλει την τιμή μιας ιδιότητας, πρέπει να γράφεται ως "
ή "
ή "
όταν εμφανίζεται μέσα στην ίδια την τιμή της ιδιότητας. Ομοίως, ο χαρακτήρας μονών εισαγωγικών ('
), πρέπει να γράφεται ως '
ή '
(αλλά όχι ως '
, με εξαίρεση την γραφή σε XHTML[51]) όταν εμφανίζεται μέσα στην ίδια την τιμή της ιδιότητας. Αν ένας δημιουργός εγγράφου HTML παραβλέψει να γράψει αυτά τα σύμβολα ως οντότητες χαρακτήρων ή αριθμών, τότε μερικοί browser μπορούν να είναι αρκετά επιεικείς και προσπαθούν να χρησιμοποιήσουν το παραπλήσιο περιεχόμενο για να μαντέψουν την πρόθεση του χρήστη. Το αποτέλεσμα δεν παύει να είναι άκυρη σήμανση, η οποία κάνει το έγγραφο λιγότερο προσιτό σε άλλους browser οι οποίοι μπορεί να προσπαθήσουν να αναλύσουν το έγγραφο για άλλους σκοπούς, όπως για παράδειγμα για την καταχώρηση του περιεχομένου του σε μηχανές αναζήτησης.
Η διαφυγή διευκολύνει επίσης τη χρήση χαρακτήρων που είτε είναι δύσκολο να δακτυλογραφηθούν, είτε δεν συμπεριλαμβάνονται καν στην κωδικοποίηση χαρακτήρων του εγγράφου. Για παράδειγμα, ο τονισμένος χαρακτήρας e
(δηλαδή το é
), ο οποίος τυπικά συναντάται σε μερικές ευρωπαϊκές γλώσσες, μπορεί να γραφεί σε οποιοδήποτε έγγραφο HTML ως η οντότητα é
ή ως η αριθμητική αναφορά é
ή é
, χρησιμοποιώντας χαρακτήρες οι οποίοι είναι διαθέσιμοι σε όλα τα πληκτρολόγια και υποστηρίζονται σε όλες τις κωδικοποιήσεις χαρακτήρων. Οι κωδικοποιήσεις Unicode, όπως η UTF-8, είναι συμβατές με όλους τους σύγχρονους browser και επιτρέπουν την πρόσβαση σε σχεδόν όλους τους χαρακτήρες όλων των συστημάτων γραφής του κόσμου.[52]
Τύποι δεδομένων
[Επεξεργασία | επεξεργασία κώδικα]Στην HTML ορίζονται μερικοί τύποι δεδομένων για το περιεχόμενο των στοιχείων, όπως σενάρια εντολών ή stylesheet, και μια πληθώρα τύπων για τις τιμές των ιδιοτήτων, συμπεριλαμβανομένων των ID, των name, των URI, διαφόρων αριθμών και μονάδων μήκους, γλωσσών, τύπων αρχείων πολυμέσων, χρωμάτων, κωδικοποιήσεων χαρακτήρων, ημερομηνιών κλπ.
Δήλωση τύπου εγγράφου
[Επεξεργασία | επεξεργασία κώδικα]Τα έγγραφα HTML πρέπει να αρχίζουν με μια Δήλωση τύπου εγγράφου (Document Type Declaration, ανεπίσημα λέγεται και «doctype»). Αυτή η δήλωση βοηθά τους browser να καταλάβουν πώς πρέπει να διαβάσουν το περιεχόμενο του εγγράφου και πώς να το παρουσιάσουν μετά, και ιδιαίτερα όταν χρησιμοποιείται το quirks mode.
Ο αρχικός σκοπός του doctype ήταν να επιτρέπει την ανάλυση και επιβεβαίωση των εγγράφων HTML από εργαλεία SGML τα οποία ήταν βασισμένα στο Document Type Definition (DTD). Το DTD στο οποίο αναφέρεται το DOCTYPE περιέχει μια γραμματική σε γλώσσα μηχανής, η οποία καθορίζει τι επιτρέπεται και τι απαγορεύεται να υπάρχει μέσα στο έγγραφο. Οι browser, από την άλλη, δεν υλοποιούν την HTML ως εφαρμογή της SGML και συνεπώς δεν διαβάζουν το DTD. Στην HTML5 δεν ορίζεται κανένα DTD, λόγω εγγενών τεχνολογικών περιορισμών. Έτσι το doctype <!doctype html>
δεν αναφέρεται σε κανένα.
Ένα παράδειγμα doctype σε HTML 4 είναι:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Αυτή η δήλωση αναφέρεται στο DTD για την εκδοχή «strict» της HTML 4.01. Τα προγράμματα επιβεβαίωσης κώδικα τα οποία βασίζονται σε SGML, διαβάζουν το DTD με σκοπό να ερμηνεύσουν κατάλληλα το έγγραφο και να επαληθεύσουν την ορθότητά του. Στους σύγχρονους browser, ένα έγκυρο doctype ενεργοποιεί τη λειτουργία κατά τα πρότυπα, αντί για το quirks mode.
Επιπλέον, στην HTML 4.01 παρέχονται και τα DTD Transitional και Frameset.
Σημασιολογική
[Επεξεργασία | επεξεργασία κώδικα]Η Σημασιολογική HTML είναι ένας τρόπος γραφής της HTML με έμφαση στο νόημα της σημασμένης πληροφορίας παρά στην εμφάνισή της. Η HTML συμπεριλαμβάνει σημασιολογικά στοιχεία από την σύλληψή της,[53] συμπεριλαμβάνει όμως και στοιχεία αποκλειστικά εμφανισιακά, όπως τις ετικέτες <font>
, <i>
και <center>
. Υπάρχουν επίσης και τα σημασιολογικά ουδέτερα span και div. Από τα τέλη της δεκαετίας του 1990, όταν τα CSS άρχισαν να δουλεύουν στους περισσότερους browser, οι σχεδιαστές ιστοσελίδων ενθαρρύνονταν να αποφεύγουν τη χρήση των εμφανισιακών ετικετών της HTML και να προτιμούν να διαχωρίζουν το περιεχόμενο από την παρουσίαση.[54]
Σε μια συζήτηση για τον Σημασιολογικό ιστό, ο Τιμ Μπέρνερς Λι και άλλοι έδωσαν παραδείγματα τρόπων με τους οποίους έξυπνα λογισμικά πελάτη ιστού θα μπορούν μια μέρα να περιηγούνται στον Ιστό και να βρίσκουν, να φιλτράρουν και να συσχετίζουν τα προηγουμένως άσχετα και αδημοσίευτα δεδομένα, προς όφελος των ανθρώπων χρηστών.[55] Δέκα χρόνια μετά, δεν είναι ακόμα κοινή η χρήση τέτοιων προγραμμάτων, αλλά μερικές από τις ιδέες του Web 2.0, των mashups και των ιστοσελίδων σύγκρισης τιμών προϊόντων μπορεί να πλησιάζουν στο σκεπτικό εκείνο. Η βασική διαφορά μεταξύ αυτών των εφαρμογών και των έξυπνων λογισμικών του Μπέρνερς Λι, είναι ότι οι τρέχουσες μέθοδοι συγκέντρωσης πληροφοριών συνήθως σχεδιάζεται από προγραμματιστές ιστού, οι οποίοι ήδη ξέρουν τις τοποθεσίες ιστού και τα API των δεδομένων που θέλουν να συνενώσουν, να συγκρίνουν και να συνδυάσουν.
Ένας σημαντικός τύπος λογισμικοί που περιηγείται αυτόματα το διαδίκτυο και διαβάζει ιστοσελίδες, χωρίς προηγούμενη γνώση του περιεχομένου τους, είναι και τα προγράμματα των μηχανών αναζήτησης. Αυτά τα λογισμικά εξαρτούνται από την σημασιολογική σαφήνεια των ιστοσελίδων που βρίσκουν, καθώς χρησιμοποιούν διάφορες τεχνικές και αλγόριθμους για να διαβάζουν και να ταξινομούν εκατομμύρια σελίδων καθημερινά, και να παρέχουν στους επισκέπτες τους τη δυνατότητα αναζήτησης, χωρίς την οποία ο Παγκόσμιος Ιστός θα είχε μόνο ένα μικρό κλάσμα της χρησιμότητάς του.
Οι σημασιολογικές δομές που ήδη υπάρχουν στην HTML, είναι σημαντικό να εφαρμόζονται καθολικά, για να βοηθούν το περιεχόμενο του δημοσιευμένου κειμένου να γίνεται καλύτερα αντιληπτό. Με αυτό τον τρόπο, τα λογισμικά των μηχανών αναζήτησης, αλλά και άλλα λογισμικά που φτιάχνουν mashup ή άλλα υβρίδια από το περιεχόμενο των ιστότοπων θα μπορούν καλύτερα να εκτιμούν τη σημασία του κειμένου που βρίσκουν στα έγγραφα HTML.[56] Προς το σκοπό αυτό, οι ετικέτες της HTML που εξυπηρετούσαν μόνο εμφανισιακό σκοπό θεωρούνται ξεπερασμένες στην XHTML, και απαγορεύονται στην HTML5.
Τέλος, η σημασιολογικά γραμμένη HTML βελτιώνει την προσιτότητα των εγγράφων στον ιστό. Για παράδειγμα, στους browser για χρήστες με προβλήματα όρασης ή ακοής, είναι πιο εύκολη η σωστή απόδοση της δομής του εγγράφου με τρόπο άλλο από τον οπτικό, όταν αυτό είναι σωστά σημασιολογικά σημασμένο.
Μεταφορά της HTML
[Επεξεργασία | επεξεργασία κώδικα]Τα αρχεία HTML, όπως συμβαίνει και με τους υπόλοιπους τύπους αρχείων του υπολογιστή, μπορούν να μεταφερθούν με πολλούς τρόπους. Ωστόσο, λόγω της λειτουργίας της HTML, οι δύο πιο συνηθισμένοι τρόποι είναι μέσω HTTP από έναν εξυπηρετητή, ή μέσω E-mail.
HTTP
[Επεξεργασία | επεξεργασία κώδικα]Ο Παγκόσμιος Ιστός αποτελείται κυρίως από αρχεία HTML τα οποία μεταφέρονται από εξυπηρετητές προς browsers χρησιμοποιώντας το πρωτόκολλο HTTP. Ωστόσο, μια που το ίδιο πρωτόκολλο μπορεί επιπλέον να μεταφέρει εικόνες, ήχο και άλλο περιεχόμενο, χρειάζεται ένας τρόπος αναγνώρισης του τύπου του περιεχομένου που μεταφέρεται. Έτσι, μαζί με το ίδιο το αρχείο, μεταφέρονται και μερικές επιπλέον πληροφορίες, ή μεταδεδομένα, μεταξύ αυτών και ο τύπος ΜΙΜΕ (για παράδειγμα text/html
ή application/xhtml+xml
) καθώς και η κωδικοποίηση χαρακτήρων που χρησιμοποιείται.
Στους σύγχρονους browser, ο τύπος MIME που συνοδεύει το αρχείο HTML μπορεί να επηρεάζει τον τρόπο που αυτό εμφανίζεται. Για παράδειγμα, ένα αρχείο το οποία συνοδεύεται από έναν τύπο XHTML MIME, αναμένεται να είναι γραμμένο σε γλώσσα σωστά διατυπωμένη, κατά τα πρότυπα της XML. Αν δεν είναι, τότε τα σφάλματα στον κώδικα μπορεί να αποτρέψουν την ορθή απεικόνιση του αρχείου. Επειδή η XHTML 1.0 και η XHTML 1.1 είναι πάντα συμβατές με την XML, το W3C υποστηρίζει ότι δεν παίζει ρόλο ποιος τύπος MIME θα χρησιμοποιηθεί.[57][58].[59]
HTML e-mail
[Επεξεργασία | επεξεργασία κώδικα]Αρκετά προγράμματα ηλεκτρονικής αλληλογραφίας ενσωματώνουν δυνατότητες της HTML, ώστε να επιτρέπουν στους χρήστες να χρησιμοποιούν την σήμανση της HTML στα μηνύματά τους, για να στέλνουν κείμενο με χρώμα, με μορφοποίηση, ή και με ενσωματωμένες εικόνες και διαγράμματα. Ωστόσο, οι μέθοδοι αυτές προκαλούν μερικά προβλήματα, τα οποία προκαλούνται αφ' ενός από την έλλειψη κάποιου προτύπου για την περίληψη HTML σε E-mail (με αποτέλεσμα ο κάθε προγραμματιστής να ενεργεί κατά βούληση), και αφ' ετέρου από τη δυνατότητα εκμετάλλευσης αυτών των δυνατοτήτων από κακόβουλους χρήστες.
Ονόματα αρχείων
[Επεξεργασία | επεξεργασία κώδικα]Ο πιο κοινός τύπος αρχείου για έγγραφα HTML είναι .html
, όμως έχει επιβιώσει και η συντόμευση .htm
, από μερικά παλαιότερα λειτουργικά συστήματα που δεν αναγνώριζαν επεκτάσεις αρχείων με περισσότερα από τρία γράμματα. Επιπλέον, στα Microsoft Windows χρησιμοποιείται ο τύπος .hta
(από το HTML Application) ο οποίος δείχνει ότι το αρχείο συμπεριλαμβάνει HTML μαζί με κάποια δυναμικά στοιχεία που το κάνουν να εκτελείται ως εφαρμογή.
Δημιουργία με προγράμματα WYSIWYG
[Επεξεργασία | επεξεργασία κώδικα]Ένα θέμα αντιπαράθεσης στις κοινότητες των δημιουργών περιεχομένου για τον Ιστό είναι η χρήση προγραμμάτων WYSIWIG (What You See Is What You Get), δηλαδή προγραμμάτων στα οποία ο χρήστης σχεδιάζει οπτικά τη σελίδα όπως θα φαίνεται μετά στον browser του επισκέπτη. Αυτό κάνει τη γνώση της HTML προαιρετική για την κατασκευή μιας ιστοσελίδας. Αυτό το μοντέλο δημιουργίας με προγράμματα WYSIWIG έχει γνωρίσει έντονες κριτικές, [60][61] κυρίως λόγω της κακής ποιότητας του κώδικα που δημιουργείται αυτόματα.
Παρόλα αυτά, οι επεξεργαστές ιστοσελίδων WYSIWYG είναι δημοφιλείς λόγω της ευκολίας που παρέχουν.
Δείτε επίσης
[Επεξεργασία | επεξεργασία κώδικα]Παραπομπές
[Επεξεργασία | επεξεργασία κώδικα]- ↑ «Conformance: requirements and recommendations». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ (Μάρτιος 1989). «Information Management: A Proposal». CERN. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ (1990). «Design Issues». World Wide Web Consortium. Αρχειοθετήθηκε από το πρωτότυπο στις 21 Σεπτεμβρίου 2018. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ (1990). «Design Issues, Uses». World Wide Web Consortium. Αρχειοθετήθηκε από το πρωτότυπο στις 3 Μαρτίου 2018. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «First mention of HTML Tags on the www-talk mailing list». World Wide Web Consortium. 20 Οκτωβρίου 1991. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «Index of elements in HTML 4». World Wide Web Consortium. 24 Δεκεμβρίου 1999. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ· Connolly, Dan. «"Hypertext Markup Language (HTML)" Internet-Draft». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ (9 Δεκεμβρίου 1991). «Re: SGML/HTML docs, X Browser». Αρχειοθετήθηκε από το πρωτότυπο στις 20 Μαΐου 2013. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ 10,0 10,1 Ρέιμοντ, Έρικ. «IETF and the RFC Standards Process». The Art of Unix Programming (στα Αγγλικά). Αρχειοθετήθηκε από το πρωτότυπο στις 17 Μαρτίου 2005. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
In IETF tradition, standards have to arise from experience with a working prototype implementation — but once they become standards, code that does not conform to them is considered broken and mercilessly scrapped. ...Internet-Drafts are not specifications; software implementers and vendors are specifically barred from claiming compliance with them as if they were specifications. Internet-Drafts are focal points for discussion, usually in a working group... Once an Internet-Draft has been published with an RFC number, it is a specification to which implementers may claim conformance. It is expected that the authors of the RFC and the community at large will begin correcting the specification with field experience.
- ↑ «HTML+ Internet-Draft — Abstract». Αρχειοθετήθηκε από το πρωτότυπο στις 15 Μαΐου 2016. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
Browser writers are experimenting with extensions to HTML and it is now appropriate to draw these ideas together into a revised document format. The new format is designed to allow a gradual roll over from HTML, adding features like tables, captioned figures and fill-out forms for querying remote databases or mailing questionnaires.
- ↑ 12,0 12,1 «[rfc:1866 Request for Comments: 1866]» από tools.ietf.org. Δημοσιεύθηκε Νοέμβριο 1995. Αρχειοθετήθηκε 21/09/2018. Ανακτήθηκε 21/09//2018.
- ↑ Berners-Lee, Tim· Connolly, Dan (Νοέμβριος 1995). «RFC 1866: Hypertext Markup Language - 2.0 - Acknowledgments». Internet Engineering Task Force. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
Since 1993, a wide variety of Internet participants have contributed to the evolution of HTML, which has included the addition of in-line images introduced by the NCSA Mosaic software for WWW. Dave Raggett played an important role in deriving the forms material from the HTML+ specification. Dan Connolly and Karen Olson Muldrow rewrote the HTML Specification in 1994. The document was then edited by the HTML working group as a whole, with updates being made by Eric Schieler, Mike Knezovich and Eric W. Sink at Spyglass, Inc. Finally, Roy Fielding restructured the entire draft into its current form.
- ↑ Berners-Lee, Tim· Connolly, Dan (Νοέμβριος 1995). «RFC 1866: Hypertext Markup Language - 2.0 - Introduction». Internet Engineering Task Force. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
This document thus defines an HTML 2.0 (to distinguish it from the previous informal specifications). Future (generally upwardly compatible) versions of HTML with new features will be released with higher version numbers.
- ↑ 15,0 15,1 15,2 15,3 15,4 15,5 Raggett, Dave (1998). Raggett on HTML 4. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML 3.2 Reference Specification». World Wide Web Consortium. 4 Ιανουαρίου 1997. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «IETF HTML WG». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
Note: This working group is closed
- ↑ «HTML 4.0 Specification». World Wide Web Consortium. 18 Δεκεμβρίου 1997. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Arnoud Engelfriet. «Introduction to Wilbur». Web Design Group. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML 4 - 4 Conformance: requirements and recommendations». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML 4.0 Specification». World Wide Web Consortium. 24 Απριλίου 1998. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML 4.01 Specification». World Wide Web Consortium. 24 Δεκεμβρίου 1999. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML 4.01 Errata». 12 Μαΐου 2001. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ 24,0 24,1 «ISO/IEC 15445:2000 - Information technology -- Document description and processing languages -- HyperText Markup Language (HTML)». ISO. 2000. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «Information technology — Document description and processing languages — HyperText Markup Language (HTML)». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Connolly, Daniel (6 Ιουνίου 1992). «MIME as a hypertext architecture». CERN. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Connolly, Daniel (15 Ιουλίου 1992). «HTML DTD enclosed». CERN. Αρχειοθετήθηκε από το πρωτότυπο στις 20 Νοεμβρίου 2010. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Connolly, Daniel (18 Αυγούστου 1992). «document type declaration subset for HyperText Markup Language as defined by the World Wide Web project». CERN. Αρχειοθετήθηκε από το πρωτότυπο στις 14 Μαρτίου 2012. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ 29,0 29,1 Connolly, Daniel (24 Νοεμβρίου 1992). «Document Type Definition for the HyperText Markup Language as used by the World Wide Web application». CERN. Αρχειοθετήθηκε από το πρωτότυπο στις 18 Ιανουαρίου 2012. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011. Ενότητα «Revision History»
- ↑ Μπέρνερς Λι, Τιμ· Connolly, Dan (Ιούνιος 1993). «Hypertext Markup Language (HTML) Internet Draft version 1.1». IETF IIIR Working Group. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ· Connolly, Dan (Ιούνιος 1993). «Hypertext Markup Language (HTML) Internet Draft version 1.2». IETF IIIR Working Group. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ· Connolly, Dan (28 Νοεμβρίου 1994). «HyperText Markup Language Specification - 2.0 INTERNET DRAFT». IETF. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML 3.0 Draft (Expired!) Materials». World Wide Web Consortium. 12 Δεκεμβρίου 1995. Ανακτήθηκε στις 3 Σεπτεμβρίου 2008.
- ↑ «HyperText Markup Language Specification Version 3.0». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Raggett, Dave (28 Μαρτίου 1995). «HyperText Markup Language Specification Version 3.0». HTML 3.0 Internet Draft Expires in six months. World Wide Web Consortium. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Bowers, Neil. Weblint: Just Another Perl Hack. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.54.7191.
- ↑ Lie, Håkon Wium· Bos, Bert (Απρίλιος 1997). Cascading style sheets: designing for the Web. Addison Wesley Longman. σελ. 263. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML5». World Wide Web Consortium. 10 Ιουνίου 2008. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «HTML5, one vocabulary, two serializations». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «XHTML 1.0: The Extensible HyperText Markup Language (Second Edition)». World Wide Web Consortium. 26 Ιανουαρίου 2000. Ανακτήθηκε στις 2 Σεπτεμβρίου 2011.
- ↑ «XHTML 1.1 - Module-based XHTML — Second Edition». World Wide Web Consortium. 16 Φεβρουαρίου 2007. Ανακτήθηκε στις 3 Σεπτεμβρίου 2008.
- ↑ «XHTM 2.0». World Wide Web Consortium. 26 Ιουλίου 2006. Ανακτήθηκε στις 3 Σεπτεμβρίου 2008.
- ↑ «XHTML 2 Working Group Expected to Stop Work End of 2009, W3C to Increase Resources on HTML5». World Wide Web Consortium. 17 Ιουλίου 2009. Ανακτήθηκε στις 3 Σεπτεμβρίου 2008.
- ↑ «HTML5». World Wide Web Consortium. 24 Οκτωβρίου 2008. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «Activating Browser Modes with Doctype».
- ↑ «On SGML and HTML». World Wide Web Consortium. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «XHTML 1.0 - Differences with HTML 4». World Wide Web Consortium. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Korpela, Jukka (6 Ιουλίου 1998). «Why attribute values should always be quoted in HTML». Αρχειοθετήθηκε από το πρωτότυπο στις 21 Νοεμβρίου 2008. Ανακτήθηκε στις 3 Σεπτεμβρίου 2008.
- ↑ «Objects, Images, and Applets in HTML documents». World Wide Web Consortium. 24 Δεκεμβρίου 1999. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «H56: Using the dir attribute on an inline element to resolve problems with nested directional runs». Techniques for WCAG 2.0. World Wide Web Consortium. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «The Named Character Reference '». World Wide Web Consortium. 26 Ιανουαρίου 2000.
- ↑ «The Unicode Standard: A Technical Introduction». Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Μπέρνερς Λι, Τιμ· Φισκέτι, Μαρκ (2000). Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web by Its Inventor. San Francisco: Harper. ISBN 9781439500361.
- ↑ Raggett, Dave (2002). «Adding a touch of style». World Wide Web Consortium. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011. Το άρθρο αυτό σημειώνει ότι η εμφανισιακή σήμανση HTML μπορεί να είναι ακόμα χρήσιμη για browser «πριν από τον Netscape 4.0 και τον Internet Explorer 4.0». Δείτε και τον Κατάλογο των Περιηγητών ιστού για τους browser που δημιουργήθηκαν πριν από το 1997.
- ↑ Tim Berners-Lee, James Hendler και Ora Lassila (2001). «The Semantic Web». Scientific American. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ Nigel Shadbolt, Wendy Hall and Tim Berners-Lee (2006). «The Semantic Web Revisited» (PDF). IEEE Intelligent Systems. Αρχειοθετήθηκε από το πρωτότυπο (PDF) στις 20 Μαρτίου 2013. Ανακτήθηκε στις 3 Σεπτεμβρίου 2011.
- ↑ «XHTML 1.0 The Extensible HyperText Markup Language (Second Edition)». World Wide Web Consortium. 2000. Ανακτήθηκε στις 7 Δεκεμβρίου 2008.
XHTML Documents which follow the guidelines set forth in Appendix C, "HTML Compatibility Guidelines" may be labeled with the Internet Media Type "text/html" [RFC2854], as they are compatible with most HTML browsers. Those documents, and any other document conforming to this specification, may also be labeled with the Internet Media Type "application/xhtml+xml" as defined in [RFC3236].
- ↑ «RFC 2119: Key words for use in RFCs to Indicate Requirement Levels». Harvard University. 1997. Αρχειοθετήθηκε από το πρωτότυπο στις 6 Δεκεμβρίου 2008. Ανακτήθηκε στις 7 Δεκεμβρίου 2008.
3. SHOULD This word, or the adjective "RECOMMENDED", mean that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood and carefully weighed before choosing a different course.
- ↑ «XHTML 1.1 - Module-based XHTML — Second Edition». World Wide Web Consortium. 2007. Ανακτήθηκε στις 7 Δεκεμβρίου 2008.
XHTML 1.1 documents SHOULD be labeled with the Internet Media Type text/html as defined in [RFC2854] or application/xhtml+xml as defined in [RFC3236].
- ↑ Sauer, C.: WYSIWIKI - Questioning WYSIWYG in the Internet Age. In: Wikimania (2006)
- ↑ Spiesser, J., Kitchen, L.: Optimization of html automatically generated by WYSIWYG programs. In: 13th International Conference on World Wide Web, pp. 355--364. WWW '04. ACM, New York, NY (New York, NY, U.S., May 17–20, 2004)
Πηγές
[Επεξεργασία | επεξεργασία κώδικα]![]() |
Τα Βικιβιβλία έχουν ένα βιβλίο σχετικά, με τίτλο |
- http://www.it.uom.gr/project/html2/tut0.html Αρχειοθετήθηκε 2006-09-02 στο Wayback Machine.
- http://www.eeei.gr/odhgos/htmlfaq.htm
- HTML στο Curlie
|