Khi đọc về nội dung bài viết này có thể chẳng bao giờ bạn lại nghĩ ngợi về việc tại sao khi chúng ta lướt web lại bằng các trình duyệt chẳng hạn như: Internet Explorer, Firefox, Chrome, Opera,… Và tại sao các trình duyệt này lại có thể hiện thị được nội dung ở các vị trí khác nhau, cách chúng thể hiện hình ảnh cũng như màu chữ, kích cỡ font chữ, bố cục của một trang web. Tại sao trên cùng một nội dung khi chúng ta xem trên desktop, mobile, tablet thì lại có các cách hiển thị khác nhau. Điều này tưởng chừng như đơn giản với rất nhiều phần đông người dùng cuối. Nhưng để làm được điều đó là cả một quá trình lâu dài, trong đó việc thống nhất về một tiêu chuẩn thể hiện trên website là việc đáng quan tâm.
Tại sao tôi lại nói về điều đó, giả định rằng nếu không hề có một tiêu chuẩn chung nào thống nhất điều tôi nói phía trên thì sao? Khi bạn lướt web bằng trình duyệt trên safari thì bạn thấy nội dung chúng ta trình bày với chữ màu xanh. Nhưng khi qua trình duyệt Chrome thì lại có màu đỏ hoặc ở trình duyệt Firefox lại có màu Trắng. Và tương tự, kích cỡ và bố cục lại khác nhau. Điều này cần có một tổ chức nhằm thống nhất chung các cách trình bày ở trên trình duyệt. Đó chính là tổ chức W3C. Bên dưới tôi xin trình bày một chút lịch sử hình thành CSS để các bạn có thể hình dung về tổng quan CSS trước khi chúng ta bắt tay vào nghiên cứu các bài viết về CSS trong tương lai. Điều này cũng là một trong số những cách để củng cố lại kiến thức và chém gió một chút khi chúng ta đàm đạo.
Style Sheets không phải là một ý tưởng gì mới vào thời kỳ phát triển Word Wide Web. Việc tách cấu trúc tài liệu khỏi bố cục tài liệu là điều mà HTML muốn hướng tới vào năm 1990. Tim Berners – Lee đã viết trình duyệt/trình soạn thảo của anh ta theo cách mà anh ta xác định với cách biểu thị đơn giản mang tên gọi NeXT. Mặc dù vậy, ông ấy không công bố về cách thức cũng như cú pháp mà ông sử dụng cho trình duyệt của mình. Ông xem điều này là mỗi trình duyệt cần phải tự làm khi phát triển. Đến năm 1992 Pei Wei phát triển trình duyệt mang tên “Viola”, có ngôn ngữ style sheets riêng.

Tuy nhiên các trình duyệt ngày ấy gặp hạn chế về các tùy chọn cho người dùng về việc thể hiện các mảng miếng, phong cách riêng của họ. Đến đầu năm 1993, trình duyệt phổ biến NCSA Mosaic xuất hiện. Trình duyệt này cho người dùng thoải mái tùy biến màu sắc và các font chữ. Thoạt đầu, tưởng đây là ý tưởng hay nhưng lại là một bước thụt lùi.
Các tác giả của trang web thì có mong muốn có một bản sắc, phong cách riêng nhất định. Một trong những câu hỏi đầu tiên của một tác giả đối với Web là làm thế nào để thay đổi font chữ và màu sắc của các yếu tố. Vào thời điểm đó, HTML chưa cung cấp được chức năng này – và đúng như vậy. Đoạn trích này từ một tin nhắn được gửi đến danh sách gửi thư www-talk vào đầu năm 1994 cho cảm giác căng thẳng giữa các tác giả và các nhà phát triển:
Trên thực tế, tôi đã rất vui mừng trong năm qua khi liên tục nói với đám người (theo nghĩa đen) những người muốn – buộc mình vào đây, đến đây – kiểm soát tài liệu của họ trông như thế nào đó sẽ là chuyện nhỏ trong TeX, Microsoft Word và mọi môi trường xử lý văn bản phổ biến khác: “Xin lỗi, bạn đã bị lừa.”
Tác giả của tin nhắn là Marc Andreessen, một trong những lập trình viên đằng sau NCSA Mosaic. Sau đó, ông trở thành người đồng sáng lập Netscape, một công ty mong muốn thực hiện yêu cầu của các tác giả. Vào ngày 13 tháng 10 năm 1994, Marc Andreessen tuyên bố với www-talk rằng phiên bản beta đầu tiên của Mozilla (sau này được chuyển thành Netscape Navigator) đã có sẵn để thử nghiệm. Trong số các thẻ mới, trình duyệt mới được hỗ trợ là trung tâm và nhiều thẻ khác sẽ sớm xuất hiện.
Ba ngày trước khi Netscape công bố tính khả dụng của trình duyệt mới, Håkon đã xuất bản bản thảo đầu tiên của đề xuất Cascading HTML Style Sheets. Đằng sau hậu trường, Dave Raggett (kiến trúc sư chính của HTML 3.0) đã khuyến khích phát hành bản dự thảo để ra ngoài trước khi hội thảo về khảm và Web sắp diễn ra ở Chicago. Dave đã nhận ra rằng HTML sẽ và không bao giờ nên biến thành ngôn ngữ mô tả trang và cần có một cơ chế xây dựng có mục đích hơn để đáp ứng các yêu cầu từ các tác giả. Mặc dù phiên bản đầu tiên của tài liệu còn non nớt, nhưng nó cung cấp một cơ sở hữu ích để thảo luận.
Trong số những người trả lời bản thảo CSS đầu tiên có Bert Bos. Vào thời điểm đó, anh ta đang xây dựng Argo, một trình duyệt có khả năng tùy biến cao với các biểu định kiểu và anh ta quyết định hợp tác với Håkon. Cả hai đề xuất này trông khác với CSS ngày nay, nhưng không khó để nhận ra các khái niệm ban đầu.
Một trong những tính năng của ngôn ngữ phong cách Argo là nó đủ chung để áp dụng cho các ngôn ngữ đánh dấu khác ngoài HTML. Điều này cũng trở thành mục tiêu thiết kế trong CSS và HTML đã sớm bị xóa khỏi tiêu đề của đặc tả. Argo cũng có các tính năng nâng cao khác không được đưa vào CSS1, đặc biệt là các bộ chọn thuộc tính và văn bản được tạo. Cả hai tính năng phải chờ CSS2.
Cascading Style Sheets không phải là ngôn ngữ phong cách được đề xuất duy nhất tại thời điểm đó. Có ngôn ngữ của Pei Wei từ trình duyệt Viola và khoảng 10 đề xuất khác về ngôn ngữ biểu định kiểu đã được gửi đến danh sách gửi thư www-talk và www-html. Sau đó, đã có DSSSL, một ngôn ngữ biến đổi và phong cách phức tạp đang được phát triển tại ISO để in các tài liệu SGML. DSSSL cũng có thể được áp dụng cho HTML. Nhưng, CSS có một tính năng khác biệt với tất cả các tính năng khác: Nó đã tính đến rằng trên Web, phong cách của một tài liệu không thể được thiết kế bởi chính tác giả hoặc người đọc, nhưng mong muốn của họ phải được kết hợp, hoặc xếp tầng, theo một cách nào đó; và trên thực tế, không chỉ mong muốn của người đọc và tác giả, mà cả khả năng của thiết bị hiển thị và trình duyệt.
Theo kế hoạch, đề xuất CSS ban đầu đã được trình bày tại hội nghị Web ở Chicago vào tháng 11 năm 1994. Bài thuyết trình tại Ngày của nhà phát triển đã gây ra nhiều cuộc thảo luận. Đầu tiên, khái niệm về sự cân bằng giữa sở thích của tác giả và người dùng là mới lạ. Một ảnh chụp màn hình giả tưởng cho thấy một thanh trượt với người dùng nhãn ở một bên và bên kia là tác giả. Bằng cách điều chỉnh thanh trượt, người dùng có thể thay đổi kết hợp sở thích của riêng mình và của tác giả. Thứ hai, CSS được một số người coi là quá đơn giản cho nhiệm vụ mà nó được thiết kế. Họ lập luận rằng để tạo phong cách cho các tài liệu, cần có sức mạnh của một ngôn ngữ lập trình đầy đủ. CSS đã đi theo hướng ngược lại chính xác bằng cách đưa ra một định dạng đơn giản, khai báo.
Tại hội nghị WWW tiếp theo vào tháng 4 năm 1995, CSS đã được trình bày một lần nữa. Cả Bert và Håkon đều ở đó (trên thực tế, đây là lần đầu tiên họ gặp nhau trực tiếp) và lần này, họ cũng có thể cho thấy việc thực hiện. Bert đã trình bày sự hỗ trợ cho các biểu định kiểu trong Argo và Håkon cho thấy một phiên bản trình duyệt Arena đã được sửa đổi để hỗ trợ CSS. Arena đã được Dave Raggett viết như một thử thách cho những ý tưởng mới, và một trong số đó là những tờ phong cách. Điều bắt đầu khi các bài thuyết trình kỹ thuật kết thúc trong các cuộc thảo luận chính trị về sự cân bằng giữa tác giả và độc giả. Các đại diện từ phía tác giả cho rằng cuối cùng tác giả phải chịu trách nhiệm quyết định cách trình bày các tài liệu. Ví dụ, người ta đã lập luận rằng có thể có các yêu cầu pháp lý về cách in nhãn cảnh báo và người dùng không thể giảm kích thước phông chữ cho các cảnh báo đó. Phía bên kia, nơi Bert và Håkon thuộc về, lập luận rằng người dùng, người mà đôi mắt và đôi tai cuối cùng phải giải mã bài thuyết trình, nên được đưa ra lời cuối cùng khi xảy ra xung đột.
Bên ngoài các trận chiến chính trị, công việc kỹ thuật vẫn tiếp tục. Danh sách gửi thư kiểu www được tạo vào tháng 5 năm 1995 và các cuộc thảo luận ở đó thường ảnh hưởng đến sự phát triển của các đặc tả CSS. Gần 10 năm sau, có hơn 16.000 tin nhắn trong kho lưu trữ của danh sách gửi thư. Và sau 20 năm, hơn 80.000!
Năm 1995, World Wide Web Consortium (W3C) cũng đi vào hoạt động. Các công ty đã gia nhập Hiệp hội với tốc độ cao và tổ chức được thành lập. Hội thảo về các chủ đề khác nhau đã được tìm thấy là một cách thành công để các thành viên và nhân viên của W3C gặp gỡ và thảo luận về sự phát triển kỹ thuật trong tương lai. Do đó đã quyết định rằng một hội thảo khác nên được tổ chức, lần này với các tờ mẫu là chủ đề. Các nhân viên kỹ thuật của W3C làm việc trên các tờ phong cách (cụ thể là Håkon và Bert) hiện đang ở Sophia-Antipolis ở miền Nam nước Pháp nơi W3C đã thiết lập trang web châu Âu. Miền Nam nước Pháp không phải là nơi tồi tệ nhất để thu hút những người tham gia hội thảo, nhưng vì nhiều người tham gia tiềm năng ở Hoa Kỳ, nên đã quyết định tổ chức hội thảo tại Paris, nơi được phục vụ tốt hơn bởi các chuyến bay quốc tế. Hội thảo cũng là một thử nghiệm để xem liệu W3C có thể tổ chức các sự kiện bên ngoài Hoa Kỳ hay không. Trong số những người tham gia có Thomas Reardon của Microsoft, người đã cam kết hỗ trợ CSS trong các phiên bản sắp tới của Internet Explorer.
Vào cuối năm 1995, W3C đã thành lập Hội đồng Đánh giá Biên tập HTML (HTML ERB) để phê chuẩn các thông số kỹ thuật HTML trong tương lai. Vì các biểu định kiểu nằm trong phạm vi quan tâm của các thành viên trong nhóm mới, nên đặc tả CSS được coi là một mục công việc với mục tiêu đưa nó vào Khuyến nghị của W3C. Trong số các thành viên của HTML ERB có Lou Montulli của Netscape. Sau khi Microsoft báo hiệu rằng họ đã thêm hỗ trợ CSS trong trình duyệt của mình, điều quan trọng là phải đưa Netscape lên máy bay. Mặt khác, chúng ta có thể thấy phân kỳ Web theo các hướng khác nhau với các trình duyệt hỗ trợ các thông số kỹ thuật khác nhau. Các trận chiến trong HTML ERB kéo dài và khó khăn, nhưng CSS cấp 1 cuối cùng đã nổi lên như một Khuyến nghị của W3C vào tháng 12 năm 1996.
Vào tháng 2 năm 1997, CSS có nhóm làm việc riêng của mình bên trong W3C và nhóm mới bắt đầu làm việc với các tính năng mà CSS1 không giải quyết. Nhóm được chủ trì bởi Chris Lilley, một người Scotland được tuyển dụng vào W3C từ Đại học Manchester. CSS cấp 2 đã trở thành Khuyến nghị vào tháng 5 năm 1998. Kể từ đó, nhóm đã hoạt động song song trên các mô-đun CSS mới và errata cho CSS 2.
Nhóm làm việc của W3C có các thành viên (khoảng 15 vào năm 1999, khoảng 431 tính đến tháng 11 năm 2019), được ủy quyền bởi các công ty và tổ chức là thành viên của W3C. Họ đến từ khắp nơi trên thế giới, vì vậy các cuộc họp thường diễn ra qua điện thoại và kéo dài khoảng một giờ mỗi tuần. Khoảng bốn lần mỗi năm, họ gặp nhau ở đâu đó trên thế giới.