HTML "tiêu chuẩn" và "nâng cao"
Hãy xét đến một thực tế của HTML
--nhiều điều bạn có thể thực hiện hơn nhưng chúng cũng làm cho HTML trở thành không thỏa "tiêu chuẩn" hơn.
Mục đích
Đây là một bài học ngắn và không cần thực tập gì hết! Sau bài này bạn có khả năng:- Quyết định khi nào dùng những đặc điểm của HTML mà có thể không hoạt động được cho tất cả web browser.
Bài học
Trong bài 1, chúng ta đã giới thiệu về HTML "tiêu chuẩn". Trong những bài học tiếp theo trong tài liệu này sẽ chỉ cho bạn cách sử dụng một số tag HTML khác mà có thể không thấy được trên tất cả các Web browser. Ở đây chúng ta chỉ xem qua một vài ý tưởng trước khi bạn bước vào những bài sau. Trước hết chúng ta hãy xem sơ qua về lịch sử của nó.Cách đây khá lâu ("trong một thiên hà rất xa?")... vào khoảng năm 1990, World Wide Web là hệ thống được xây dựng trên văn bản có nền tảng dựa trên ngôn ngữ HyperText Markup Language. Các tag và sự thông dịch của nó dựa trên những chuẩn (HTML 1.0) đặt bởi một tổ chức quốc tế (international committee). Đây chính là chìa khóa để cho "Web" trở nên "phổ biến" (world wide) bởi vì theo những tiêu chuẩn này, thông tin hoàn toàn độc lập với hệ thống máy tính dùng để xem nó.
Ngay cả khi NCSA Mosaic xuất hiện một cách đột ngột vào năm 1993 như là một web browser đồ thị đầu tiên, những tiêu chuẩn vẫn được dựa trên ký tự và được cập nhật thành HTML 2.0.
Web trở nên phổ biến,
phổ biến rộng rãi,
phổ biến một cách điên rồ.
Những nhà lập trình bắt đầu xây dựng những Web browser có cung cấp những chức năng giống như Mosaic (bởi vì họ phải hổ trợ tất cả các tính chất của HTML có trong tiêu chuẩn quốc tế). Một nhóm người trong đó có các nhà phát triển Mosaic đã thành lập một công ty mới có biểu tượng là "Mozilla" ("Mosaic" + "Godzilla"?) và tạo ra một web browser mới tên là NetScape.
Netscape đã nhanh hơn so với NCSA Mosaic. Tuy nhiên, nó phát triển trong đại chúng vì nó chứa đựng tất cả những tính chất của HTML 2.0 CỘNG với nhiều tag thêm vào cho những thứ mà bạn không thể thực hiện được trong HTML 2.0. Phần "mở rộng" (extensions) hay "nâng cao" này (enhancements) đã là nguyên nhân (và vẫn là một nguyên nhân) của sự tranh cãi lớn giữa những người làm ra chuẩn HTML và những người thích các đặc điểm mà Netscape thêm vào.
Mozilla Netscape đã hết sức phổ biến và nhanh chóng chiếm lĩnh 3/4 thị trường Web browser. Bây giờ, trong HTML, bạn có thể đặt màu nền cho trang của bạn, tạo bảng, đặt văn bản quanh hình ảnh, và còn nhiều nữa. Bạn cũng đã từng nhìn thấy những trang web có câu "This page optimized for NetScape". Nhiều Web browser khác đã bắt đầu hổ trợ những đặc tính của Netscape "HTML 2.0+". Cùng với các dịch vụ giúp đỡ trực tuyến được mở ra trên Web, thị trường browser ngày càng trở nên đông đúc (và hỗn độn).
Ủy ban quốc tế đã đối đầu với một tình thế lưỡng nan, cùng với việc thị trường trở nên rộng lớn là việc đòi hỏi những tag "không chuẩn" trở nên một phần của HTML. Khi những qui tắc cho HTML 3.0 được phát triển, họ bắt đầu đưa vào hầu hết (nhưng không phải là tất cả) những tag đã được Netscape giới thiệu. Tuy vậy, quá trình chuẩn hoá xem ra là quá chậm đối với nhiều người.
Và cuộc chiến trở nên lớn hơn khi vào năm 1996 Microsoft đã giới thiệu những tag HTML riêng biệt của họ. Như vậy HTML có trở thành một mớ hỗn độn không? Để biết thêm thông tin về sự cạnh tranh này, chúng tôi đề nghị bạn tham khảo đến HTML 3.0 and NetScape. Những hoạt động gần đây nhất được đề nghị là của HTML 3.2, mà trong đó chứa đựng hầu hết các đặc điểm được hổ trợ bởi những nhà sản xuất lớn trên thị trường hiện nay, đó là Netscape và Microsoft. Các phát biểu gần đây nhất là sự thảo luận về các chuẩn nên được hổ trợ trong tất cả các browser.
Nhưng những điều đó thì có ý nghĩa gì với bạn? Đó là điều quan trọng nhất, khi bạn là một nhà thiết kế trang Web, bạn cần phải biết loại browser nào mà người đọc sẽ phải sử dụng. Có lẽ bạn là một thầy giáo trong một trường học hoặc bạn đang làm việc trong một công ty mà tất cả mọi người đang sử dụng cùng một loại browser nào đó. Vậy thì bạn có chắc chắn rằng các tag đặc biệt bạn đang sử dụng là không có vấn đề không.
Tuy nhiên, thông thường bạn vẫn "xuất bản" (publishing) các trang Web vào một Internet server mà không có ý kiến gì về loại browser sẽ được sử dụng. Bạn có thể thêm những khuyến cáo đặc biệt trong trang Web của bạn. Bạn có thể tuân theo một cách chặt chẽ với những chuẩn được hổ trợ rộng rãi bởi tất cả các Web browser. Ngay cả khi bạn sử dụng những tag đặc biệt, cũng có vài cách thông dụng để không gây ra sự tàn phá nào cho những người sử dụng các browser khác.
Điều quan trọng nhất ... không phải là việc quan tâm đến trang đó trông như thế nào trên hệ thống của bạn! Người đọc có thể có những Web browser khác nhau, có những phông chữ khác nhau, sử dụng những tham khảo màu khác nhau, kích cở màn hình khác nhau.. tất cả những thứ đó có thể gây ra sự hiển thị khác nhau về kích thước, về dạng trình bày so với máy của bạn. Nếu bạn có thể thử trang Web trên các máy tính khác nhau, hãy phóng to và thu nhỏ cửa sổ của browser, chuyển đổi phông chuẩn.
Thật là may mắn, thiết kế nguyên thủy của HTML rất thoáng và dễ tha thứ cho một số các luật - nếu một browser bắt gặp một tag mà nó không biết xử lý hay trình bày như thế nào, nó dễ dàng bỏ qua các tag này.
Ví dụ như, xem như là browser của tôi có hổ trợ tag <drip>...</drip>. Nghĩa của nó là đoạn văn bên trong sẽ xuất hiện bình thường rồi sau đó từ từ "rơi" xuống đáy của trang (người biên tập - TÔI THÌ LÀM CHO NÓ ĐI LÊN!), một hiệu ứng lạ lùng cho trang web của tôi:
<drip><H2 align=center>Welcome</H2></drip>
to my sloppy home page!. Look out
for the puddles!
hoạt động của nó tạo ra một sự duyên dáng trên browser tự tạo của tôi.
Trên browser của bạn không có hổ trợ đặc tính này, bạn sẽ thấy:
Khi browser của bạn không hổ trợ tag này nó chỉ hoàn toàn băng qua tag mà không tạo ra sự phá hủy hay thông báo sai nào. Đó là một ý tưởng thông minh, đúng không?
Welcome
to my sloppy home page!. Look out for the puddles!
Khi chúng ta tiếp tục các bài học nâng cao này, các hướng dẫn hơi dài và phức tạp hơn. Nhưng bạn sẽ tiếp tục, đồng ý chứ!
Xem lại
- Tại sao bạn phải quan tâm đến các tiêu chuẩn của HTML ?
- Trường hợp nào bạn cảm thấy thoải mái khi sử dụng HTML không chuẩn?
- Điều gì xảy ra nếu một web browser bắt gặp một tag mà nó không hiểu ?