HTML (viết tắt của từ HyperText Markup Language, hay là “Ngôn ngữ Đánh dấu Siêu văn bản”) là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web trên World Wide Web. Nó có thể được trợ giúp bởi các công nghệ như CSS và các ngôn ngữ kịch bản giống như JavaScript.
Các trình duyệt web nhận tài liệu HTML từ một web server hoặc một kho tàng trữ cục bộ và render tài liệu đó thành những website đa phương tiện. HTML diễn đạt cấu trúc của một trang web về mặt ngữ nghĩa và những tín hiệu khởi đầu được gồm có cho sự Open của tài liệu .
Các phần tử HTML là các khối xây dựng của các trang HTML. Với cấu trúc HTML, hình ảnh và các đối tượng khác như biểu mẫu tương tác có thể được nhúng vào trang được hiển thị. HTML cung cấp một phương tiện để tạo tài liệu có cấu trúc bằng cách biểu thị ngữ nghĩa cấu trúc cho văn bản như headings, paragraphs, lists, links, quotes và các mục khác. Các phần tử HTML được phân định bằng các thẻ, được viết bằng dấu ngoặc nhọn. Các thẻ như và giới thiệu trực tiếp nội dung vào trang. Các thẻ khác như
bao quanh và cung cấp thông tin về văn bản tài liệu và có thể bao gồm các thẻ khác làm phần tử phụ. Các trình duyệt không hiển thị các thẻ HTML, nhưng sử dụng chúng để diễn giải nội dung của trang.
HTML hoàn toàn có thể nhúng những chương trình được viết bằng scripting như JavaScript, điều này ảnh hưởng tác động đến hành vi và nội dung của những website. Việc gồm có CSS xác lập giao diện và bố cục tổng quan của nội dung. World Wide Web Consortium ( W3C ), trước kia là đơn vị chức năng bảo dưỡng HTML và là người duy trì hiện tại của những tiêu chuẩn CSS, đã khuyến khích việc sử dụng CSS trên HTML trình diễn rõ ràng kể từ năm 1997. [ 2 ]
Năm 1980, nhà vật lý Tim Berners-Lee, một nhà thầu tại CERN, đã yêu cầu và tạo mẫu ENQUIRE, một mạng lưới hệ thống cho những nhà nghiên cứu CERN sử dụng và san sẻ tài liệu. Năm 1989, Berners-Lee đã viết một bản ghi nhớ đề xuất kiến nghị một mạng lưới hệ thống siêu văn bản dựa trên Internet. [ 3 ] Berners-Lee xác lập rõ HTML và viết ứng dụng trình duyệt và sever vào cuối năm 1990. Năm đó, Berners-Lee và kỹ sư mạng lưới hệ thống tài liệu CERN Robert Cailliau đã hợp tác để cùng nhu yếu hỗ trợ vốn, nhưng dự án Bất Động Sản không được CERN chính thức trải qua. Trong ghi chú cá thể của mình [ 4 ] từ năm 1990, ông đã liệt kê [ 5 ] ” 1 số ít trong nhiều nghành mà siêu văn bản được sử dụng ” và đặt một cuốn bách khoa toàn thư lên số 1Mô tả HTML công khai minh bạch tiên phong là một tài liệu có tên ” HTML Tags “, lần tiên phong được đề cập trên Internet bởi Tim Berners-Lee vào cuối năm 1991. [ 7 ] Nó diễn đạt 18 thành phần gồm có phong cách thiết kế khởi đầu, tương đối đơn thuần của HTML. Ngoại trừ thẻ siêu link, chúng bị tác động ảnh hưởng mạnh bởi SGMLguid, một định dạng tài liệu dựa trên Standard Generalized Markup Language ( SGML ) tại CERN. Mười một trong số những thành phần này vẫn sống sót trong HTML 4. [ 8 ]
HTML là một ngôn ngữ đánh dấu mà các trình duyệt web sử dụng để giải thích và soạn văn bản, hình ảnh và các tài liệu khác thành các trang web trực quan hoặc nghe được. Các đặc điểm mặc định cho mọi mục của đánh dấu HTML được xác định trong trình duyệt và các đặc điểm này có thể được thay đổi hoặc nâng cao bằng cách sử dụng thêm CSS của nhà thiết kế trang web. Nhiều thành phần văn bản được tìm thấy trong báo cáo kỹ thuật 1988 ISO TR 9537 Techniques for using SGML, lần lượt đề cập đến các tính năng của các ngôn ngữ định dạng văn bản ban đầu, chẳng hạn như được sử dụng bởi lệnh RUNOFF được phát triển vào đầu những năm 1960 cho hệ điều hành CTSS (Compatible Time-Sharing System): các lệnh định dạng này bắt nguồn từ các lệnh được sử dụng bởi các bộ sắp chữ để định dạng tài liệu theo cách thủ công. Tuy nhiên, khái niệm SGML về đánh dấu tổng quát dựa trên các phần tử (các phạm vi được chú thích lồng nhau với các thuộc tính) chứ không chỉ đơn thuần là các hiệu ứng in, với sự phân tách của cấu trúc và đánh dấu, HTML đã được chuyển dần theo hướng này với CSS.
Berners-Lee xem xét HTML là một ứng dụng của SGML. Nó chính thức được định nghĩa như vậy bởi Internet Engineering Task Force ( IETF ) với việc xuất bản vào giữa năm 1993 về yêu cầu tiên phong cho một đặc tả HTML, Bản thảo trên Internet ” Hypertext Markup Language ( HTML ) ” của Berners-Lee và Dan Connolly, gồm có định nghĩa kiểu SGML Document type definition để xác lập ngữ pháp. [ 9 ] [ 10 ] Bản dự thảo hết hạn sau sáu tháng, nhưng đáng quan tâm vì nó đã thừa nhận thẻ tùy chỉnh của trình duyệt NCSA Mosaic để nhúng hình ảnh trong dòng, phản ánh triết lý của IETF về việc dựa trên những tiêu chuẩn trên những nguyên mẫu thành công xuất sắc. Tương tự, Bản thảo Internet cạnh tranh đối đầu của Dave Raggett, ” HTML + ( Hypertext Markup Format ) “, ừ cuối năm 1993, đề xuất kiến nghị tiêu chuẩn hóa những tính năng đã được tiến hành như bảng và biểu mẫu điền vào. [ 11 ]Sau khi những bản thảo HTML và HTML + hết hạn vào đầu năm 1994, IETF đã tạo một HTML Working Group, nhóm này vào năm 1995 đã hoàn thành xong ” HTML 2.0 “, đặc tả HTML tiên phong dự tính sẽ được coi là tiêu chuẩn dựa trên việc tiến hành trong tương lai. [ 12 ]Sự tăng trưởng hơn nữa dưới sự bảo trợ của IETF đã bị đình trệ bởi những quyền lợi cạnh tranh đối đầu. Kể từ năm 1996, những đặc tả ký thuật HTML đã được duy trì, với nguồn vào từ những nhà sản xuất ứng dụng thương mại, bởi World Wide Web Consortium ( W3C ). [ 13 ] Tuy nhiên, vào năm 2000, HTML cũng đã trở thành tiêu chuẩn quốc tế ( ISO / IEC 15445 : 2000 ). HTML 4.01 được xuất bản vào cuối năm 1999, với những bản tiếp theo được xuất bản đến năm 2001. Năm 2004, sự tăng trưởng khởi đầu trên HTML5 trong Web Hypertext Application Technology Working Group ( WHATWG ), nhóm này đã trở thành một nhóm hoàn toàn có thể phân phối chung với W3C vào năm 2008, và được triển khai xong và chuẩn hóa trên Ngày 28 tháng 10 năm năm trước. [ 14 ]
Dòng thời hạn những phiên bản HTML[sửa|sửa mã nguồn]
4 tháng 11 năm 1995
HTML 2.0 được phát hành như RFC 1866. Thêm các khả năng bổ sung của RFCs:
25 tháng 11 năm 1995: RFC 1867 (upload dựa trên form)
Tháng 5 năm 1996: RFC 1942 (bảng)
Tháng 8 1996: RFC 1980 (client-side image maps)
Tháng 1 năm 1997: RFC 2070 (Toàn cầu hóa)
14 tháng 1 năm 1997
HTML 3.2[15] được phát hành như một W3C Recommendation. Đây là phiên bản đầu tiên được phát triển và chuẩn hóa độc quyền bởi W3C, vì IETF đã đóng cửa HTML Working Group vào 12 tháng 9 năm 1996.[16]
Tên mã ban đầu “Wilbur”,[17] HTML 3.2 đã loại bỏ hoàn toàn các công thức toán học, điều chỉnh sự chồng chéo giữa các phần mở rộng độc quyền khác nhau và sử dụng hầu hết các thẻ đánh dấu trực quan của Netscape. Các blink element của Netscape và marquee element của Microsoft đã bị bỏ qua do thỏa thuận chung giữa hai công ty.[13] Đánh dấu cho các công thức toán học tương tự như trong HTML đã không được chuẩn hóa cho đến 14 tháng sau trong MathML.
Bài chi tiết cụ thể : HTML4
18 tháng 12 năm 1997
HTML 4.0[18] được phát hành như một W3C Recommendation. Nó đề xuất 3 biến thể:
Strict, trong đó các phần tử không dùng nữa bị cấm
Transitional, trong đó các phần tử không dùng được cho phép
Frameset, trong đó chủ yếu chỉ cho phép các phần tử liên quan đến frame
Tên mã ban đầu “Cougar”,[17] HTML 4.0 áp dụng nhiều loại phần tử và thuộc tính dành riêng cho trình duyệt, nhưng đồng thời tìm cách loại bỏ các tính năng đánh dấu trực quan của Netscape bằng cách đánh dấu chúng là không dùng nữa để thay thế cho các style sheets. HTML 4 là một ứng dụng SGML tuân theo ISO 8879 – SGML.[19]
24 tháng 4 năm 1998
HTML 4.0[20] đã được phát hành lại với các chỉnh sửa nhỏ mà không tăng số hiệu phiên bản.
24 tháng 12 năm 1999
HTML 4.01[21] được phát hành như một W3C Recommendation. Nó cung cấp ba biến thể giống như HTML 4.0 và errata cuối cùng của nó được xuất bản vào ngày 12 tháng 5 năm 2001.
Tháng 5 năm 2000
ISO/IEC 15445:2000[22][23] (“ISO HTML”, dựa trên HTML 4.01 Strict) được phát hành như một chuẩn quốc tế ISO/IEC. Trong ISO, tiêu chuẩn này thuộc phạm vi của ISO/IEC JTC1/SC34 (ISO/IEC Joint Technical Committee 1, Subcommittee 34 – Document ngôn ngữ mô tả và xử lý).[22]
Sau HTML 4.01, không có phiên bản HTML mới nào trong nhiều năm vì sự phát triển của ngôn ngữ song song, dựa trên XML XHTML đã chiếm lĩnh HTML Working Group của W3C từ đầu và giữa những năm 2000.
Bài chi tiết cụ thể : HTML5
28 tháng 10 năm 2014
HTML5[24] được phát hành như một W3C Recommendation.[25]
1 tháng 11 năm 2016
HTML 5.1[26] được phát hành như một W3C Recommendation.[27][28]
14 tháng 12 năm 2017
HTML 5.2[29] được phát hành như một W3C Recommendation.[30][31]
Dòng thời hạn những bản dự thảo HTML[sửa|sửa mã nguồn]
Tháng 10 năm 1991
HTML Tags, một tài liệu CERN không chính thức liệt kê 18 thẻ HTML, lần đầu tiên được đề cập trước công chúng.
Tháng 6 năm 1992
Dự thảo không chính thức đầu tiên của HTML DTD,[32] với bảy lần[33][34][35] sửa đổi tiếp theo (15 tháng 7, 6 tháng 8, 18 tháng 8, 17 tháng 11, 19 tháng 11, 20 tháng 11, 22 tháng 11)
Tháng 11 năm 1992
HTML DTD 1.1 bản đầu tiên có số phiên bản, dựa trên các bản sửa đổi RCS, bắt đầu bằng 1.1 thay vì 1.0), một dự thảo không chính thức [35]
Tháng 6 năm 1993
Hypertext Markup Language[36] được phát hành bởi IETF IIIR Working Group như một Dự thảo Internet (một đề xuất thô cho một tiêu chuẩn). Nó đã được thay thế bằng một phiên bản thứ hai[37] một tháng sau đó.
Tháng 11 năm 1993
HTML+ được phát hành bởi IETF như một Dự thảo Internet và là một đề xuất cạnh tranh với dự thảo Hypertext Markup Language. Nó hết hạn vào tháng 7 năm 1994.[38]
Tháng 11 năm 1994
Dự thảo đầu tiên (revision 00) của HTML 2.0 phát hành bởi IETF[39] (được gọi là “HTML 2.0” từ revision 02[40]), cuối cùng dẫn đến việc xuất bản RFC 1866 vào tháng 11 năm 1995.[41]
Tháng 4 năm 1995 (tác giả tháng 3 năm 1995)
HTML 3.0[42] đã được đề xuất như một tiêu chuẩn cho IETF, nhưng đề xuất này đã hết hạn sau năm tháng (28 tháng 9 năm 1995)[43] mà không có thêm hành động nào. Nó bao gồm nhiều khả năng có trong đề xuất HTML+ của Raggett, chẳng hạn như hỗ trợ các bảng, dòng văn bản xung quanh các số liệu và hiển thị các công thức toán học phức tạp.[43]
W3C đã bắt đầu phát triển trình duyệt Arena của riêng mình để làm nền tảng thử nghiệm cho HTML 3 và Cascading Style Sheets,[44][45][46] nhưng HTML 3.0 đã không thành công vì một số lý do. Dự thảo được coi là rất lớn với 150 trang và tốc độ phát triển trình duyệt, cũng như số lượng các bên quan tâm, đã vượt xa các nguồn lực của IETF.[13] Các nhà cung cấp trình duyệt, bao gồm Microsoft và Netscape vào thời điểm đó, đã chọn triển khai các tập hợp con khác nhau của các tính năng dự thảo của HTML 3 cũng như giới thiệu các phần mở rộng của riêng họ cho nó.[13] (xem Cuộc chiến trình duyệt). Những phần mở rộng này bao gồm để kiểm soát các khía cạnh phong cách của tài liệu, trái với “niềm tin [của cộng đồng kỹ sư hàn lâm] rằng những thứ như màu văn bản, kết cấu nền, kích thước font chữ và font face chắc chắn nằm ngoài phạm vi của một ngôn ngữ khi mục đích duy nhất của họ là để chỉ định cách sắp xếp tài liệu.”[13] Dave Raggett, người đã từng là Thành viên của W3C trong nhiều năm, đã nhận xét chẳng hạn: “Ở một mức độ nhất định, Microsoft đã xây dựng hoạt động kinh doanh của mình trên Web bằng cách mở rộng các tính năng HTML.”[13]
Logo của HTML5
Tháng 1 năm 2008
HTML5 được giới thiệu như một Working Draft bởi W3C.[47]
Mặc dù cú pháp của nó gần giống với SGML, HTML5 đã từ bỏ bất kỳ nỗ lực nào để trở thành một ứng dụng SGML và đã xác định rõ ràng việc tuần tự hóa “html” của riêng nó, ngoài việc tuần tự hóa XHTML5 dựa trên XML thay thế.[48]
2011: HTML5 – Last Call
Ngày 14 tháng 2 năm 2011, W3C đã mở rộng điều lệ của HTML Working Group của mình với các mốc quan trọng rõ ràng cho HTML5. tháng 5 năm 2011, nhóm làm việc đã nâng cấp HTML5 thành “Last Call”, một lời mời đến các cộng đồng trong và ngoài W3C để xác nhận tính hợp lý về mặt kỹ thuật của đặc tả. W3C đã phát triển một bộ thử nghiệm toàn diện để đạt được khả năng tương tác rộng rãi cho đặc điểm kỹ thuật đầy đủ vào năm 2014, đó là ngày mục tiêu để đề xuất.[49] Tháng 1 năm 2011, WHATWG đổi tên “HTML5” living standard của họ thành “HTML”. Tuy nhiên, W3C vẫn tiếp tục dự án phát hành HTML5.[50]
2012: HTML5 – Candidate Recommendation
Tháng 7/2012, WHATWG và W3C quyết định về mức độ tách biệt. W3C sẽ tiếp tục công việc đặc tả HTML5, tập trung vào một tiêu chuẩn xác định duy nhất, được coi là “snapshot” của WHATWG. Tổ chức WHATWG sẽ tiếp tục công việc của mình với HTML5 như một “Living Standard”. Khái niệm về một living standard là không bao giờ hoàn thiện và luôn được cập nhật và cải thiện. Các tính năng mới có thể được thêm vào nhưng chức năng sẽ không bị xóa.[51]
Tháng 12 năm 2012, W3C đã chỉ định HTML5 là Candidate Recommendation.[52] Tiêu chí để tiến tới W3C Recommendation là “cả hai triển khai và tương tác hoàn chỉnh 100%”.[53]
2014: HTML5 – Proposed Recommendation and Recommendation
Tháng 9 năm 2014, W3C đã chuyển HTML5 sang Proposed Recommendation.[54]
Ngày 28 tháng 10 năm 2014, HTML5 đã được phát hành dưới dạng W3C Recommendation ổn định,[55] có nghĩa là quá trình đặc tả đã hoàn tất.[56]
Có bốn loại thành phần lưu lại trong HTML :
Đánh dấu Có cấu trúc miêu tả mục đích của phần văn bản
Đánh dấu trình bày miêu tả phần hiện hình trực quan của phần văn bản bất kể chức năng của nó là gì (ví dụ, boldface
b>
sẽ hiển thị đoạn văn bản boldface) (Chú ý là cách dùng đánh dấu trình bày này bây giờ không còn được khuyên dùng mà nó được thay thế bằng cách dùng CSS),
Đánh dấu liên kết ngoài chứa phần liên kết từ trang này đến trang kia (ví dụ, Wikipedia
sẽ hiển thị từ Wikipedia như là một liên kết ngoài đến một URL) cụ thể, và
Các phần tử thành phần điều khiển giúp tạo ra các đối tượng (ví dụ, các nút và các danh sách).
Tách phần trình diễn và nội dung[sửa|sửa mã nguồn]
Nỗ lực tách phần nội dung ra khỏi phần hình thức trình bày của trang HTML đã đưa đến sự xuất hiện của các chuẩn mới như XHTML. Các chuẩn này nhấn mạnh vào việc sử dụng thẻ đánh dấu vào việc xác định cấu trúc tài liệu như phần đề mục, đoạn văn, khối văn bản trích dẫn và các bảng, chứ không khuyên dùng các thẻ đánh dấu mang tính chất trình bày trực quan, như , (in đậm), và (in nghiêng). Những mã mang tính chất trình bày đó đã được loại bỏ khỏi HTML 4.01 Strict và các đặc tả XHTML nhằm tạo điều kiện cho CSS. CSS cung cấp một giải pháp giúp tách cấu trúc HTML ra khỏi phần trình bày của nội dung của nó. Xem phần tách nội dung và trình bày.