Tìm hiểu về HTML5 và CSS3, ứng dụng để viết một website đơn giản
MỤC LỤC
LỜI NÓI ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ HTML5 VÀ CSS 3
1. Cơ bản về HTML và CSS 3
1.1. HTML: 3
1.1.1. Định nghĩa về HTML 3
1.1.2. Thành phần của HTML: 3
1.1.3. Cơ bản về các thẻ HTML: 4
2. CSS: 16
II. Những điểm khác và nổi bật của html5 và css3 19
A. HTML5: 19
B. CSS3: 21
Multiple background 21
Selectors 23
Resize 23
Font 23
Chương 2 25
PHÂN TÍCH THIẾT KẾ VÀ HỆ THỐNG 25
1. Sơ đồ chức năng 25
2. Sơ đồ luồng 26
2.1. Sơ đồ luồng mức khung cảnh 26
2.2. Sơ đồ luồng dữ liệu mức đỉnh 26
3. Sơ đồ mức dưới đỉnh 27
3.1. Quản lý bài viết 27
3.2. Hiển thị 28
3.3. Tìm kiếm 28
3.4. Quản lý danh mục 29
4. Sơ đồ thực thể kiên kết 30
Chương 3 31
I. Thiết kế website 31
1.Tạo các cấp lưu trữ nội dung cho từng chủ đề: 31
Tạo Menu 33
Chọn Menus -> mainmenu -> New -> Articles -> Section Blog Layout 33
Ví dụ 2: Thẻ <table>: 38
II. Kết luận 42
III. Hướng phát triển 42
ời đối với người sử dụng cũng như các nhà phát triển web. Video và hiệu ứng Flash HTML5 sẽ cho phép bạn xem video mà không cần sử dụng một plugin như Flash hoặc Silverlight. Những lợi ích lớn với tính năng video của HTML5 - Thứ nhất, nó là miễn phí và không cần cài plug-in Adobe Flash Player.- Thứ hai, Flash có thể làm chậm 1 phần máy tính của bạn.- Sau cùng, nó chỉ là một trong nhiều phần mềm đang chạy và chiếm tài nguyên hệ thống. HTML5 có một số mục tiêu để phân biệt nó với HTML: HTML 5 vẫn giữ cho mình những cấu trúc cơ bản như HTML nhưng bên cạnh đó bổ sung thêm các tập lệnh mới, kết hợp với CSS 3, tạo ra phân khung cho trang. Có những câu lệnh trong HTML sẽ không được dùng trong HTML 5. Bên cạnh đó HTML 5 còn có khả năng hỗ trợ người lập trình như lập trình API (Application Programming Interface) và DOM (Document Object Model – Trong HTML đã được ứng dụng). Một số trình duyệt có hỗ trợ HTML 5: Firefox, Chrome, Safari, Opera Microsoft cũng đã dc công bố là sẽ đưa HTML 5 vào trong sản phẩm mới IE 9 của mình. HTML 5 sẽ là ngôn ngữ nền tảng web trong tương lai gần …. A. HTML5: - Khả năng tương thích: HTML5 vẫn giữ lại các cú pháp truyền thống trước đây, và nếu một vài tính năng mới nào đó của HTML5 chưa được trình duyệt hỗ trợ thì nó phải có một cơ chế fall back để render trong các trình duyệt cũ. Đương nhiên là, HTML5 không thể xóa bỏ tất cả những gì đã có suốt hơn 20 năm chỉ trong một ngày. Mặc dù điều này cũng không đồng nghĩa với việc HTML5 hỗ trợ tất cả các trình duyệt, nhưng nếu bạn có một trình duyệt đủ cũ để không tương thích với HTML5, có lẽ đã đến lúc bạn nâng cấp trình duyệt mới! - Tính tiện dụng: đặt người dùng lên hàng đầu nên cú pháp của HTML5 khá thoải mái (dù chưa được chặt chẽ như XHTML), thiết kế hỗ trợ sẵn bảo mật, và sự tách biệt giữa phần nội dung và trình bày ngày càng thể hiện rõ: công việc định dạng hầu hết do CSS đảm nhiệm, HTML5 không còn hỗ trợ phần lớn các chức năng định dạng trong các phiên bản HTML trước đây. - Khả năng hoạt động xuyên suốt giữa các trình duyệt: HTML5 cung cấp các khai báo đơn giản hơn và một API mạnh mẽ. Một ví dụ dễ thấy là khai báo DOCTYPE: HTML4: <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”““> HTML5: So với các phiên bản trước, đặc tả HTML5 dài hơn đáng kể nhằm chi tiết hóa mọi hành vi để đảm bảo chúng thống nhất giữa các trình duyệt khác nhau. - Khả năng truy xuất rộng rãi: HTML5 mang lại sự hỗ trợ tốt hơn cho các ngôn ngữ và cho người khuyết tật, đồng thời cũng có thể hoạt động trên các thiết bị và nền tảng khác nhau. - Điểm đặc trưng đầu tiên của một ngôn ngữ đánh dấu (markup language) là các thẻ. Và ở mặt này thì HTML5 được bổ sung rất nhiều cái mới, từ các thẻ tổ chức nội dung (article, aside, title…) đến các thẻ hỗ trợ tương tác và multimedia (video, audio…). Trong HTML5 cũng xuất hiện một khái niệm gọi là semantic markup, tức là các thẻ có mang ngữ nghĩa. Các thẻ này ra đời từ việc khảo sát các trang web và nhận diện một số thói quen đặt tên phổ biến (một số phần của trang web thường luôn được đặt một cái tên như “header”, “footer”, “nav”). Ngoài sự rõ ràng, sử dụng các semantic markup còn có thể đem lại lợi thế khi các công cụ tìm kiếm trong tương lai tận dụng chúng để phân loại kết quả. Bên cạnh đó, thẻ của HTML5 cũng được xem là một cải tiến lớn. Giờ đây với Form 2.0 (một cách gọi form trong HTML5), tất cả những chức năng mà bạn cần (định dạng, validate data…) đã được xây dựng trực tiếp vào trong HTML. Bạn không còn cần đến Ajax, Flash hay các công nghệ hỗ trợ để làm công việc này nữa! Không chỉ dừng lại ở các tag, HTML5 bao gồm một tập các API hấp dẫn. Vài API thú vị có thể kể đến như: Canvas Geolocation WebSocket Web Storage WebWorkers … Một số các API này sẽ được nói đến trong các phần tiếp theo. B. CSS3: Multiple background CSS3 cho phép bạn áp dụng nhiều hình nền lên một phần tử (element). Tương tự như việc áp dụng đổ bóng , bạn có thể dùng tất cả các thuộc tính như background-image, background-repeat, background-position và background-size. Các khai báo hình nền cách nhau bởi dấu phẩy: body { background: url(../images/2.png) no-repeat left top, url(../images/1.png) no-repeat right top, url(../images/3.png) no-repeat left bottom, url(../images/4.png) no-repeat right bottom; background-color:#ffffff; } Selectors CSS3 selectors cho phép bạn chọn các phần tử HTML dễ dàng hơn. Cách chọn của CSS3 không những giúp bạn tiết kiệm thời gian viết CSS, giảm dung lượng file mà còn giúp cho mã HTML dễ nhìn hơn. Các pseudo-classes mới cho phép bạn chọn một nhóm các phần tử hoặc phần tử tiêng biệt nào đó (trước đây phải dùng javascript để làm việc này). Dưới đây là một số pseudo-classes mới first-of-type /* Chọn phần tử đầu tiên của thẻ nào đó */ last-child /* Chỉ chọn phần tử cuối cùng */ nth-child(n) /* chọn phần tử thứ n*/ not(e) /* chọn tất cả trừ phần tử e */ Resize Với CSS3 bạn có thể thay đổi kích thước phần tử với thuộc tính resize. Với đoạn mã sau, bạn sẽ thấy dưới cùng bên phải của thẻ div#ntuts xuất hiện một hình tam giác nhỏ để thay đổi kích thước: div#ntuts { resize: both; } Font Nếu ở CSS2 bạn bị hạn chế với các font như Arial, Verdana , Tahoma vì phần lớn các máy tính có các font này thì ở CSS3 bạn có thể sử dụng bất kỳ font nào bạn muốn. Font sẽ được lấy từ một địa chỉ nào đó trên internet. @font-face { font-family: VNIThufap2; src: url(' } h1 { font-family: VNIThufap2; font-size: 3.2em; letter-spacing: 1px; text-align: center; } Chương 2 PHÂN TÍCH THIẾT KẾ VÀ HỆ THỐNG 1. Sơ đồ chức năng 2. Sơ đồ luồng 2.1. Sơ đồ luồng mức khung cảnh 2.2. Sơ đồ luồng dữ liệu mức đỉnh 3. Sơ đồ mức dưới đỉnh 3.1. Quản lý bài viết 3.2. Hiển thị 3.3. Tìm kiếm 3.4. Quản lý danh mục 4. Sơ đồ thực thể kiên kết Chương 3 I. Thiết kế website Sử dụng open source joomla (phiên bản 1.5) để làm website tin tức. Các bước chuẩn bị: Host: Nơi đặt Web Site, trong đề tài Web Site sẽ được đặt trên Tạo Database: Tạo cở sở dử liệu cho Web Site Cài đặt Joomla!: Download và cài đặt Joomla! 1.5 Cài ngôn ngữ tiếng Việt: Download và cài đặt ngôn ngữ tiếng Việt Joomla! 1.5 Cấu hình: Thiết lập các thông số cho Web Site trong Global Configuration Đăng nhập vào Admin (Back-end) 1.Tạo các cấp lưu trữ nội dung cho từng chủ đề: Có thể xóa các Section, Category và các Content Item mẫu có sẵn trong Joomla! hoặc đổi tên để sử dụng lại. Tạo Section: Chọn Content -> Section Manager để tạo các phần chính cho Web Site, có thể sửa lại các các Section có sẵn hoặc tạo thêm cái mới. Chọn New để tạo các Section Tin trong nước, Tin thế giới, Tin thể thao... Tạo Category: Chọn Content -> Category Manager để tạo các mục phụ cho Web Site, có thể sửa lại các các Category có sẵn hoặc tạo thêm cái mới. Chọn New để tạo các Category Xã hội, Kinh tế, An ninh trong phần (Section) Tin trong nước, Tin thế giới, và Category Trong nước, Quốc tế trong phần (Section) Tin thể thao... Tạo Menu Chọn Menus -> mainmenu -> New -> Articles -> Section Blog Layout Các Menu còn lại nếu muốn có thể sử dụng còn không thì xóa đi bằng cách chọn các Menu muốn xóa và nhấn vào nút Trash. Tạo Menu phụ (Sub Menu): Chọn Menus -> mainmenu -> New -> Articles -> Blog - Content Category Tạo thêm các Sub Menu khác với các lựa chọn Blog – Content Category trong đó Category và Parent Item tương ứng với các Section và Category của nó. Sau khi tạo xong các Menu có thể sắp xếp lại theo thứ tự như ý bằng cách đánh số thứ tự trong mục Order và nhấn vào biểu tượng dĩa mềm để Save hoặc cũng có thể dùng các nút mũi tên lên và xuống để sắp xếp. 3. Tạo phần liên hệ (Contact): Chọn Components -> Contacts -> Manage Contacts -> chọn Contact mẫu có sẵn hay tạo mới bằng cách nhấn New. Nhập địa chỉ Email vào mục E-mail, đây là địa chỉ được hiển thị trong phần người gửi và người nhận sẽ trả lời lại cho địa chỉ này. Nhập đầy đủ các thông tin trong các mục khác của phần này nếu muốn hoặc có thể bỏ bớt các mục này bằng cách chọn Tab Parameters và chọn Hide các mục này. Nhấn Save để hoàn tất. Có thể tạo nhiều liên hệ (Contact) nếu muốn. 4. Tạo bài viết mới- Chọn content -> Article Manager – New + Title: Tiêu đề của bài viết + Section: Lựa chọn chuyên mục + Category: Lựa chọn chuyên mục con Ngoài ra còn có các chức năng như Published, Front Page lần lượt là đã được phê duyệt và hiển thị trên trang chủ II. Đăng bài viết có sử dụng các thẻ HTML5 và CSS3: Ví dụ về thẻ HTML5: Ví dụ 1: Thẻ video Với thẻ video của HTML5, người sử dụng có thể xem video ngay lập tức mà không cần cài thêm bất kỳ phần hỗ trợ nào cả! Ta được kết quả: Ví dụ 2: Thẻ : Ta được kết quả: Ví dụ về thẻ CSS3: Ví dụ 1: Thẻ DIV Ta được kết quả: Chương 4 Kết luận và hướng phát triển I. Kết quả đạt được: 1. Trang chủ của ứng dụng: 2. Trang đăng nhập vào administrator: 3. Trang thêm bài viết mới: 4. Trang quản lý bài viết: II. Kết luận - Ứng dụng đáp ứng được yêu cầu trong giai đoạn phân tích thiết kế hệ thống - Ứng dụng kết hợp được với các thẻ HTML5 và CSS3 III. Hướng phát triển - Mở rộng trang web với quy mô lớn hơn, có nhiều ứng dụng hợp lý hơn - Xây dựng website có khả năng cập nhật tin tức tự động Như vậy sau một thời gian làm việc nghiêm túc và sự giúp đỡ tận tình của thầy giáo hướng dẫn Nguyễn Quốc Bảo, em đã hoàn thành đề tài. Quá trình tìm hiểu và nghiên cứu thực hiện đề tài giúp em hiểu biết thêm được nhiều kiến thức cơ bản về bộ môn Kỹ thuật máy tính Do thời gian thực hiện đề tài có giới hạn và kiến thức của em còn hạn hẹp nên không thể tránh khỏi những thiếu sót và chưa giới thiệu, đưa ra được những ưu điểm, nhược điềm còn tiềm ẩn bên trong website. Chính vì vậy em rất mong nhận được sự bảo ban, đóng góp ý kiến của thầy Nguyễn Quốc Bảo, giáo viên hướng dẫn trực tiếp cũng như các thầy cô trong khoa và các bạn sinh viên để báo cáo của em được hoàn thiện hơn và có cơ hội phát triển hơn. Em xin chân thành cảm ơn! Thái Nguyên, tháng 06 năm 2011 Sinh viên Lê Duy Khánh
File đính kèm:
- Tìm hiểu về HTML5 và CSS 3, ứng dụng để viết một website đơn giản.doc