Logo chính thức của HTML5, phiên bản mới nhất của HTML | |
Phần mở rộng tên file |
|
---|---|
Kiểu phương tiện | text/html |
Mã định danh loại thống nhất (UTI) | public.html |
Phát triển bởi | WHATWG |
Phát hành lần đầu | 1993; 31 năm trước |
Bản mới nhất | Living Standard / 2021 |
Kiểu định dạng | Định dạng tài liệu |
Dùng để chứa | Phần tử HTML |
Được chứa bởi | Trình duyệt Web |
Được mở rộng từ | SGML |
Được mở rộng thành | XHTML |
Định dạng mở? | Có |
Website | html |
HTML (viết tắt của HyperText Markup Language, hay còn được biết đến 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ế để tạo ra các trang web trên World Wide Web. Nó có thể được hỗ trợ bởi các công nghệ như CSS và các ngôn ngữ kịch bản như JavaScript.
HTML |
---|
|
Comparisons |
|
Trình duyệt web nhận tài liệu HTML từ một máy chủ web hoặc một kho lưu trữ địa phương và biểu diễn tài liệu đó thành các trang web đa phương tiện. HTML miêu tả cấu trúc của một trang web theo mặt nghĩa và bao gồm các chỉ mục ban đầu cho sự xuất hiện 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 để 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ư tiêu đề, đoạn văn, danh sách, liên kết, trích dẫn và các mục khác. Các phần tử HTML được xác định bằng các thẻ, được viết bằng dấu ngoặc nhọn. Các thẻ như <img />
và <input />
đưa nội dung trực tiếp vào trang. Các thẻ khác như <p>
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ẻ con khác. Các trình duyệt không hiển thị các thẻ HTML, nhưng sử dụng chúng để hiển thị nội dung của trang.
HTML có thể nhúng các chương trình được viết bằng ngôn ngữ kịch bản như JavaScript, điều này ảnh hưởng đến hành vi và nội dung của các trang web. Việc áp dụng CSS giúp định nghĩa giao diện và bố cục của nội dung. Tổ chức World Wide Web Consortium (W3C), trước đây là đơn vị duy trì HTML và hiện nay là tổ chức duy trì các tiêu chuẩn CSS, đã khuyến khích việc sử dụng CSS trên HTML để trình bày rõ ràng từ năm 1997 trở đi.
Lịch sử máy tính
Sự phát triển
Vào năm 1980, nhà khoa học máy tính Tim Berners-Lee, một nhân viên tại CERN, đã đề xuất và tạo ra ENQUIRE, một hệ thống cho các nhà nghiên cứu tại CERN sử dụng và chia sẻ tài liệu. Năm 1989, Berners-Lee đã viết một ghi chú nhắc lại về một hệ thống siêu văn bản dựa trên Internet. Berners-Lee đã định nghĩa HTML rõ ràng và viết phần mềm trình duyệt và máy chủ vào cuối năm 1990. Cùng năm đó, Berners-Lee và kỹ sư hệ thống dữ liệu CERN Robert Cailliau đã cùng nhau yêu cầu tài trợ, tuy nhiên dự án không được CERN thông qua chính thức. Trong ghi chép cá nhân của mình từ năm 1990, ông đã liệt kê 'một số trong số nhiều lĩnh vực 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 hàng đầu
Mô tả về HTML đầu tiên là một tài liệu có tên là 'HTML Tags', được Tim Berners-Lee đề cập lần đầu trên Internet vào cuối năm 1991. Tài liệu này mô tả 18 phần tử ban đầu của HTML, thiết kế tương đối đơn giản. Ngoài thẻ siêu liên kết, chúng có ảnh hưởng mạnh từ 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ố các phần tử này vẫn tồn tại trong HTML 4.
HTML là ngôn ngữ đánh dấu được các trình duyệt web sử dụng để hiển thị và soạn thảo 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 của mỗi phần tử đánh dấu HTML được xác định trong trình duyệt và có thể được thay đổi hoặc nâng cao bằng cách sử dụng CSS bởi nhà thiết kế trang web. Nhiều yếu tố văn bản được tìm thấy trong báo cáo kỹ thuật ISO TR 9537 năm 1988 'Techniques for using SGML', đề 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, như là hệ thống RUNOFF 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 phần tử (phạm vi được chú thích lồng nhau với các thuộc tính) chứ không chỉ là hiệu ứng in ấn đơn thuần, đã được HTML chuyển dần theo hướng này kết hợp với CSS.
Berners-Lee xem xét HTML như một ứng dụng của SGML. Nó đã được định nghĩa chính thức như vậy bởi Internet Engineering Task Force (IETF) và đã được công bố vào giữa năm 1993 trong một đề xuất đầu tiên về tiêu chuẩn HTML, gọi là 'Hypertext Markup Language (HTML)' của Berners-Lee và Dan Connolly, bao gồm một định nghĩa kiểu SGML Document type definition để xác định cú pháp. Bản thảo này hết hạn sau sáu tháng, nhưng đáng chú ý vì đã nhận ra thẻ tùy chỉnh của trình duyệt NCSA Mosaic để nhúng hình ảnh vào dòng, phản ánh triết lý của IETF về sử dụng các tiêu chuẩn trên các mô hình đã thành công. Tương tự, Bản thảo Internet cạnh tranh của Dave Raggett, 'HTML+ (Hypertext Markup Format)', vào cuối năm 1993, đề xuất tiêu chuẩn hóa các tính năng đã triển khai như bảng và biểu mẫu điền vào.
Sau khi các bản thảo HTML và HTML+ hết hạn vào đầu năm 1994, IETF đã thành lập một HTML Working Group. Nhóm này đã hoàn thành 'HTML 2.0' vào năm 1995, đây là đặc tả HTML đầu tiên được dự định sẽ trở thành tiêu chuẩn dựa trên các triển khai trong tương lai.
Sự phát triển tiếp theo dưới sự bảo trợ của IETF bị chậm trễ bởi các lợi ích cạnh tranh. Kể từ năm 1996, các đặc tả kỹ thuật HTML đã được duy trì với sự đóng góp từ các nhà cung cấp phần mềm thương mại, được quản lý bởi World Wide Web Consortium (W3C). Vào năm 2000, HTML đã 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 các bản cập nhật tiếp theo được xuất bản cho đến năm 2001. Năm 2004, sự phát triển bắt đầu trên HTML5 trong Web Hypertext Application Technology Working Group (WHATWG). Nhóm này đã chính thức hợp nhất với W3C vào năm 2008 và hoàn thiện, chuẩn hóa vào ngày 28 tháng 10 năm 2014.
Lịch sử các phiên bản HTML
HTML 1
HTML 1 được tạo ra bởi Sir Tim Berners-Lee năm 1993. Phiên bản này đã đặt nền móng cho việc tạo ra các trang web tĩnh đơn giản bằng cách sử dụng các thẻ đánh dấu để định dạng văn bản và tạo liên kết giữa các trang. Một số thẻ cơ bản đã được giới thiệu trong HTML 1 bao gồm ,
,
, và
để tạo liên kết.
Mặc dù HTML 1 rất đơn giản và hạn chế so với các phiên bản sau này, nhưng nó đã đóng vai trò quan trọng trong việc khởi đầu sự phát triển của World Wide Web. Nó cho phép người sáng tạo tạo ra những trang web đầu tiên để chia sẻ thông tin và tạo liên kết trên Internet. Các trình duyệt đầu tiên như NCSA Mosaic và Lynx đã hỗ trợ HTML 1, mở ra cơ hội trình bày thông tin trực tuyến.
HTML 1 đánh dấu bước khởi đầu quan trọng trong hành trình phát triển của HTML và web, và nó đã có một tầm ảnh hưởng lớn đối với sự phát triển của Internet như chúng ta biết ngày nay.
HTML 2
HTML 3
- 14 tháng 1 năm 1997
- HTML 3.2 đượ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ừng hoạt động nhóm làm việc HTML vào ngày 12 tháng 9 năm 1996.
- Tên gọi ban đầu là 'Wilbur', 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 yếu tố blink của Netscape và yếu tố marquee của Microsoft đã bị bỏ qua do sự thỏa thuận giữa hai công ty. Đá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.
HTML 4
-
- 18 tháng 12 năm 1997
- HTML 4.0 đượ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', 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.
- 24 tháng 4 năm 1998
- HTML 4.0 đã đượ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 đượ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 ('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ý).
- 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.
HTML 5
- 28 tháng 10 năm 2014
- HTML5 được phát hành như một W3C Recommendation.
- 1 tháng 11 năm 2016
- HTML 5.1 được phát hành như một W3C Recommendation.
- 14 tháng 12 năm 2017
- HTML 5.2 được phát hành như một W3C Recommendation.
Dòng thời gian các bản dự thảo HTML
- 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, với bảy lần 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
- Tháng 6 năm 1993
- Hypertext Markup Language đượ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 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.
- 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 (được gọi là 'HTML 2.0' từ revision 02), cuối cùng dẫn đến việc xuất bản RFC 1866 vào tháng 11 năm 1995.
- Tháng 4 năm 1995 (tác giả tháng 3 năm 1995)
- HTML 3.0 đã đượ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) 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.
- 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, 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. 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ó. (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.' 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.'
- Tháng 1 năm 2008
- HTML5 được giới thiệu như một Working Draft bởi W3C.
- 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 tự nhận diện 'html' của riêng nó, ngoài việc tự nhận diện XHTML5 dựa trên XML thay thế.
- 2011: HTML5 – Cuộc gọi cuối cùng
- Ngày 14 tháng 2 năm 2011, W3C đã mở rộng điều lệ của Nhóm làm việc về HTML 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 'Cuộc gọi cuối cùng', 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ý kỹ thuật của đặc tả. W3C đã phát triển một bộ kiểm tra 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. 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.
- 2012: HTML5 – Ứng cử viên 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.
- Tháng 12 năm 2012, W3C đã chỉ định HTML5 là Ứng cử viên Recommendation. 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%'.
- 2014: HTML5 – Đề xuất Recommendation và Recommendation
- Tháng 9 năm 2014, W3C đã chuyển HTML5 sang Đề xuất Recommendation.
- Ngày 28 tháng 10 năm 2014, HTML5 đã được phát hành dưới dạng W3C Recommendation ổn định, có nghĩa là quá trình đặc tả đã hoàn tất.
Đánh dấu
Có bốn loại phần tử đánh dấu 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ụ,
<b>in đậmb>
sẽ hiển thị đoạn văn bản in đậm) (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 sử 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 khác (ví dụ,
<a href='https://www.wikipedia.org/'>Wikipediaa>
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à danh sách).
Tách biệt nội dung và trình bày
Nỗ lực tách biệt phần nội dung khỏi phần hình thức trình bày trên trang HTML đã dẫn đến sự ra đời của các tiêu chuẩn mới như XHTML. Các tiêu chuẩn này tập trung vào việc sử dụng thẻ đánh dấu để xác định cấu trúc của tài liệu như các tiêu đề, đoạn văn, các khối trích dẫn và bảng, thay vì sử dụng các thẻ đánh dấu dùng để trình bày như ,
(in đậm), và
(in nghiêng). Những thẻ mang tính chất trình bày đó đã bị loại bỏ từ 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. Xem phần tách biệt nội dung và trình bày.
Cấu trúc trang HTML
<html lang='en'> <head> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, initial-scale=1.0'> <meta http-equiv='X-UA-Compatible' content='ie=edge'> <title>title> <script data-ad-client='ca-pub-2883196244040435' async src='https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js'>script> head> <body> body> html>
- C-HTML
- DHTML
- Mã hóa trong HTML
- Màu sắc trên Web
- Nội dung không có rào cản
- Phần tử HTML
- Phần tử khối
- Script trong HTML
- Tim Berners-Lee
- Trình soạn thảo HTML
- Unicode và HTML
- XHTML
- XML
Liên kết bên ngoài
- Đặc tả ngôn ngữ HTML 4.01 Tiếng Anh
- Bảng ASCII - ISO 8859-1 với Tên Thực Thể HTML Lưu trữ 2007-05-14 tại Wayback Machine
- Trình kiểm tra HTML của W3C
- Dự án Trình kiểm tra HTML/XHTML trên SourceForge
- Tài liệu và Hướng dẫn Thẻ HTML Lưu trữ 2004-10-25 tại Wayback Machine
- Diễn đàn Thảo luận về HTML Lưu trữ 2004-10-25 tại Wayback Machine
- Tầm quan trọng của việc xác thực HTML
- Lập trình: HTML - Wikibooks
- Tài liệu Thảo luận HTML+ (lỗi thời)
- Hướng dẫn cho người mới bắt đầu với HTML của NCSA Lưu trữ 2004-10-30 tại Wayback Machine
Ngôn ngữ lập trình | |
---|---|
Dùng cho kỹ nghệ |
|
Dùng trong giảng dạy |
|
Có giá trị lịch sử |
|