Giáo trình Thiết kế website - Trình độ: Cao đẳng - Trường Cao đẳng cơ giới Ninh Bình

docx 48 trang Gia Huy 16/05/2022 3740
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Thiết kế website - Trình độ: Cao đẳng - Trường Cao đẳng cơ giới Ninh Bình", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • docxgiao_trinh_thiet_ke_website_trinh_do_cao_dang_truong_cao_dan.docx

Nội dung text: Giáo trình Thiết kế website - Trình độ: Cao đẳng - Trường Cao đẳng cơ giới Ninh Bình

  1. BỘ NÔNG NGHIỆP VÀ PHÁT TRIỂN NÔNG THÔN TRƯỜNG CAO ĐẲNG CƠ GIỚI NINH BÌNH GIÁO TRÌNH MÔ ĐUN: THIẾT KẾ WEBSITE NGHỀ: LẬP TRÌNH MÁY TÍNH TRÌNH ĐỘ: CAO ĐẲNG Ban hành kèm theo Quyết định số: /QĐ- ngày .tháng .năm 2018 của Trường Cao đẳng Cơ giới Ninh Bình Ninh Bình, năm 2018 1
  2. TUYÊN BỐ BẢN QUYỀN Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo. Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh thiếu lành mạnh sẽ bị nghiêm cấm. 2
  3. LỜI GIỚI THIỆU Giáo trình này là sự đúc kết kinh nghiệm của tác giả trong giảng dạy các khoá đào tạo về Thiết kế website cũng như kinh nghiệm sử dụng các công cụ hỗ trợ và công cụ phát triển phần mềm để thiết kế Web. Hầu hết nội dung trình bày trong giáo trình đều bám theo những bài tập thực hành cụ thể. Do vậy, sau khi đọc xong và thực hành theo trình tự cuốn sách này, bạn đọc gần như có thể thiết kế và xây dựng được những website từ đơn giản đến phức tạp Đối tượng chính của giáo trình là sinh viên, học sinh các trường dạy nghề chuyên nghành CNTT. Tất nhiên cũng hoàn toàn phù hợp cho những ai quan tâm học hỏi môn học này bởi lẽ các nội dung đều được trình bày rất trực quan, có thứ tự và kết quả rõ ràng. Thời lượng thiết kế 120 tiết. Trong đó 30 tiết lý thuyết, 85 tiết thực hành và 5 tiết dành cho kiểm tra. Tuỳ theo mức độ ứng dụng của từng trường, ngành vào mô đun này mà mỗi đơn vị sẽ chọn cho mình một quĩ thời gian cũng như các nội dung giảng dạy phù hợp từ giáo trình này. Ninh Bình, ngày tháng năm Tham gia biên soạn 1. Chủ biên – Th.S Nguyễn Xuân Khôi 2. Th.S Vũ Ánh Dương 3. Th.S Nguyễn Anh Văn 3
  4. MỤC LỤC MỤC LỤC 4 Bài 1. Các thành phần cơ bản của HTML 6 1. Các thẻ định cấu trúc của tài liệu. 6 2. Các thẻ định dạng khối 8 3. Các thẻ định dạng danh sách. 9 4. Các thẻ định dạng ký tự 9 5. Thẻ chèn video, âm thanh, hình ảnh 15 Bài 2. Làm việc với CSS 21 1. Giới thiệu về CSS 21 2. Một số quy ước về CSS 22 3. Màu chữ và màu nền. 29 4. Làm việc với các thuộc tính Font chữ. 32 5. Làm việc với các thuộc tính của Text. 35 6. Peseudo – classes for Link. 37 7. Class – Id 39 8. Span – Div 41 9. Margin & padding. 42 10. Border 44 11. Height & width 46 4
  5. MÔ ĐUN: THIẾT KẾ WEB Mã số mô đun: MĐ 16 Thời gian mô đun: 120 giờ; (Lý thuyết: 30 giờ; Thực hành: 90 giờ) I. VỊ TRÍ, TÍNH CHẤT CỦA MÔ ĐUN - Vị trí: Môn học được bố trí sau khi học xong các môn chung và trước các môn học/mô đun lý thuyết cơ sở. - Tính chất: Là mô đun chuyên môn nghề. II. MỤC TIÊU MÔ ĐUN - Xây dựng được các web, trên đó có các ứng dụng phục vụ các mục tiêu cụ thể, có khả năng liên kết đến các trang Web khác; - Trình bày trên trang Web hệ thống thông tin tổng hợp bao gồm: văn bản, hình ảnh, âm thanh với nhiều kiểu định dạng khác nhau; - Hiểu được những kiến thức cơ bản về JavaScript; - Sử dụng được các ứng dụng thiết kế web theo yêu cầu; - Có thái độ nghiêm túc và tích cực trong học tập đảm bảo an toàn cho người và thiết bị. III. NỘI DUNG MÔ ĐUN 1. Nội dung tổng quát và phân phối thời gian: Thời gian Số Tên các bài trong mô đun Tổng Lý Thực Kiểm TT số Thuyết hành Tra 1 Bài 1: Các thành phần cơ bản của HTML 60 20 38 2 2 Bài 2: Làm việc với CSS 60 10 47 3 Cộng 120 30 85 5 5
  6. Bài 1. Các thành phần cơ bản của HTML Mã bài: MDD16-B01 Giới thiệu: Trong bài học này chúng ta sẽ đi tìm hiểu về các thành phần cơ bản của HTML, các cú pháp của các thẻ HTML và cách xây dựng một Website tĩnh như thế nào? Mục tiêu: Sau khi học xong bài này người học có khả năng: - Hiểu được định nghĩa, cú pháp và các thành phần cơ bản của HTML;. - Sử dụng được các thành phần cơ bản của HTML; - Xây dựng được một Website tĩnh theo yêu cầu; - Đảm bảo an toàn cho người và thiết bị 1. Các thẻ định cấu trúc của tài liệu. 1.1. Thẻ HTML. Cặp thẻ này được sử dụng để xác nhận một tài liệu là tài liệu HTML, tức là nó có sử dụng các thẻ HTML để trình bày. Toàn bộ nội dung của tài liệu được đặt giữa cặp thẻ này. Cú pháp: Toàn bộ nội của tài liệu được đặt ở đây Trình duyệt sẽ xem các tài liệu không sử dụng thẻ như những tệp tin văn bản bình thường. 1.2. Thẻ Head. Thẻ HEAD được dùng để xác định phần mở đầu cho tài liệu. Cú pháp: Phần mở đầu (HEADER) của tài liệu được đặt ở đây 1.3. Thẻ Title. Cặp thẻ này chỉ có thể sử dụng trong phần mở đầu của tài liệu, tức là nó phải nằm trong thẻ phạm vi giới hạn bởi cặp thẻ . Cú pháp: Tiêu đề của tài liệu 6
  7. 1.4. Thẻ Body. Thẻ này được sử dụng để xác định phần nội dung chính của tài liệu - phần thân (body) của tài liệu. Trong phần thân có thể chứa các thông tin định dạng nhất định để đặt ảnh nền cho tài liệu, màu nền, màu văn bản siêu liên kết, đặt lề cho trang tài liệu Những thông tin này được đặt ở phần tham số của thẻ. Cú pháp: phần nội dung của tài liệu được đặt ở đây Trên đây là cú pháp cơ bản của thẻ BODY, tuy nhiên bắt đầu từ HTML 3.2 thì có nhiều thuộc tính được sử dụng trong thẻ BODY. Sau đây là các thuộc tính chính: BACKGROUND= Đặt một ảnh nào đó làm ảnh nền (background) cho văn bản. Giá trị của tham số này (phần sau dấu bằng) là URL của file ảnh. Nếu kích thước ảnh nhỏ hơn cửa sổ trình duyệt thì toàn bộ màn hình cửa sổ trình duyệt sẽ được lát kín bằng nhiều ảnh. BGCOLOR= Đặt mầu nền cho trang khi hiển thị. Nếu cả hai tham số BACKGROUND và BGCOLOR cùng có giá trị thì trình duyệt sẽ hiển thị mầu nền trước, sau đó mới tải ảnh lên phía trên. TEXT= Xác định màu chữ của văn bản, kể cả các đề mục. ALINK=,VLINK=,LIN Xác định màu sắc cho các siêu liên kết trong văn bản. K= Tương ứng, alink (active link) là liên kết đang được kích hoạt - tức là khi đã được kích chuột lên; vlink (visited link) chỉ liên kết đã từng được kích hoạt; Như vậy một tài liệu HTML cơ bản có cấu trúc như sau: Tiêu đề của tài liệu Nội dung của tài liệu 7
  8. 2. Các thẻ định dạng khối. 2.1. Thẻ P. Thẻ được sử dụng để định dạng một đoạn văn bản. Cú pháp: Nội dung đoạn văn bản 2.2. Các thẻ định dạng đề mục. HTML hỗ trợ 6 mức đề mục. Chú ý rằng đề mục chỉ là các chỉ dẫn định dạng về mặt logic, tức là mỗi trình duyệt sẽ thể hiện đề mục dưới một khuôn dạng thích hợp. Có thể ở trình duyệt này là font chữ 14 point nhưng sang trình duyệt khác là font chữ 20 point. Đề mục cấp 1 là cao nhất và giảm dần đến cấp 6. Thông thường văn bản ở đề mục cấp 5 hay cấp 6 thường có kích thước nhỏ hơn văn bản thông thường. Dưới đây là các thẻ dùng để định dạng văn bản ở dạng đề mục: Định dạng đề mục cấp 1 Định dạng đề mục cấp 2 Định dạng đề mục cấp 3 Định dạng đề mục cấp 4 Định dạng đề mục cấp 5 Định dạng đề mục cấp 6 2.3. Thẻ xuống dòng BR. Thẻ này không có thẻ kết thúc tương ứng ( ), nó có tác dụng chuyển sang dòng mới. Lưu ý, nội dung văn bản trong tài liệu HTML sẽ được trình duyệt Web thể hiện liên tục, các khoảng trắng liền nhau, các ký tự tab, ký tự xuống dòng đều được coi như một khoảng trắng. Để xuống dòng trong tài liệu, bạn phải sử dụng thẻ 2.4. Thẻ Pre Để giới hạn đoạn văn bản đã được định dạng sẵn bạn có thể sử dụng thẻ . Văn bản ở giữa hai thẻ này sẽ được thể hiện giống hệt như khi chúng được đánh vào, ví dụ dấu xuống dòng trong đoạn văn bản giới hạn bởi thẻ sẽ có ý nghĩa chuyển sang dòng mới (trình duyệt sẽ không coi chúng như dấu cách) Cú pháp: Văn bản đã được định dạng 8
  9. 3. Các thẻ định dạng danh sách. 3.1. Danh sách không thứ tự. Mục thứ nhất Mục thứ hai Cú pháp: Có 4 kiểu danh sách: ` Danh sách không sắp xếp ( hay không đánh số) Danh sách có sắp xếp (hay có đánh số) , mỗi mục trong danh sách được sắp xếp thứ tự. Danh sách thực đơn Danh sách phân cấp 3.2. Danh sách có thứ tự. Với nhiều trình duyệt, danh sách phân cấp và danh sách thực đơn giống danh sách không đánh số, có thể dùng lẫn với nhau. Với thẻ OL ta có cú pháp sau: Muc thu nhat Muc thu hai Muc thu ba trong đó: TYPE =1 Các mục được sắp xếp theo thứ tự 1, 2, 3 =a Các mục được sắp xếp theo thứ tự a, b, c =A Các mục được sắp xếp theo thứ tự A, B, C =i Các mục được sắp xếp theo thứ tự i, ii, iii =I Các mục được sắp xếp theo thứ tự I, II, III Ngoài ra còn thuộc tính START= xác định giá trị khởi đầu cho danh sách. Thẻ có thuộc tính TYPE= xác định ký hiệu đầu dòng (bullet) đứng trước mỗi mục trong danh sách. Thuộc tính này có thể nhận các giá trị : disc (chấm tròn đậm); circle (vòng tròn); square (hình vuông). 4. Các thẻ định dạng ký tự. 4.1. Các thẻ định dạng in ký tự. Sau đây là các thẻ được sử dụng để quy định các thuộc tính như in nghiêng, in đậm, gạch chân cho các ký tự, văn bản khi được thể hiện trên trình duyệt. 9
  10. In chữ đậm In chữ nghiêng In chữ gạch chân Đánh dấu đoạn văn bản giữa hai thẻ này là định nghĩa của một từ. Chúng thường được in nghiêng hoặc thể hiện qua một kiểu đặc biệt nào đó. In chữ bị gạch ngang. In chữ lớn hơn bình thường bằng cách tăng kích thước font hiện thời lên một. Việc sử dụng các thẻ lồng nhau tạo ra hiệu ứng chữ tăng dần. Tuy nhiên đối với mỗi trình duyệt có giới hạn về kích thước đối với mỗi font chữ, vượt quá giới hạn này, các thẻ sẽ không có ý nghĩa. In chữ nhỏ hơn bình thường bằng cách giảm kích thước font hiện thời đi một. Việc sử dụng các thẻ lồng nhau tạo ra hiệu ứng chữ giảm dần. Tuy nhiên đối với mỗi trình duyệt có giới hạn về kích thước đối với mỗi font chữ, vượt quá giới hạn này, các thẻ sẽ không có ý nghĩa. Định dạng chỉ số trên (SuperScript) Định dạng chỉ số dưới (SubScript) Định nghĩa kích thước font chữ được sử dụng cho đến hết văn bản. Thẻ này chỉ có một tham số size= xác định cỡ chữ. Thẻ không có thẻ kết thúc. Chọn kiểu chữ hiển thị. Trong thẻ này có thể đặt hai tham số size= hoặc color= xác định cỡ chữ và màu sắc đoạn văn bản nằm giữa hai thẻ. Kích thước có thể là tuyệt đối (nhận giá trị từ 1 đến 7) hoặc tương đối (+2,-4 ) so với font chữ hiện tại. 4.2. Căn lề văn bản trong trang web. Trong trình bày trang Web của mình các bạn luôn phải chú ý đến việc căn lề các văn bản để trang Web có được một bố cục đẹp. Một số các thẻ định dạng như P, Hn, IMG đều có tham số ALIGN cho phép bạn căn lề các văn bản nằm trong phạm vi giới hạn bởi của các thẻ đó. 10
  11. Các giá trị cho tham số ALIGN: LEFT Căn lề trái CENTER Căn giữa trang RIGHT Căn lề phải Ngoài ra, chúng ta có thể sử dụng thẻ CENTER để căn giữa trang một khối văn bản. Cú pháp: Văn bản sẽ được căn giữa trang 4.3. Sử dụng các ký tự đặc biệt trong trang web. Ký tự & được sử dụng để chỉ chuỗi ký tự đi sau được xem là một thực thể duy nhất. Ký tự ; được sử dụng để tách các ký tự trong một từ. Ký tự Mã ASCII Tên chuỗi > > & & & 4.4. Sử dụng màu sắc trong trang web. Một màu được tổng hợp từ ba thành phần màu chính, đó là: Đỏ (Red), Xanh lá cây (Green), Xanh nước biển (Blue). Trong HTML một giá trị màu là một số nguyên dạng hexa (hệ đếm cơ số 16) có định dạng như sau: #RRGGBB trong đó: RR - là giá trị màu Đỏ. GG - là giá trị màu Xanh lá cây. BB - là giá trị màu Xanh nước biển. Màu sắc có thể được xác định qua thuộc tính bgcolor= hay color=. Sau dấu bằng có thể là giá trị RGB hay tên tiếng Anh của màu. Với tên tiếng Anh, ta chỉ có thể chỉ ra 16 màu trong khi với giá trị RGB ta có thể chỉ tới 256 màu. Màu sắc Giá trị Tên tiếng Anh Đỏ #FF0000 RED Đỏ sẫm #8B0000 DARKRED Xanh lá cây #00FF00 GREEN Xanh nhạt #90EE90 LIGHTGREEN Xanh nước biển #0000FF BLUE 11
  12. Vàng #FFFF00 YELLOW Vàng nhạt #FFFFE0 LIGHTYELLOW Trắng #FFFFFF WHITE Đen #000000 BLACK Xám #808080 GRAY Nâu #A52A2A BROWN Tím #FF00FF MAGENTA Tím nhạt #EE82EE VIOLET Hồng #FFC0CB PINK Da cam #FFA500 ORANGE Màu đồng phục hải quân #000080 NAVY #4169E1 ROYALBLUE #7FFFD4 AQUAMARINE Cú pháp: phần nội dung của tài liệu được đặt ở đây Sau đây là ý nghĩa các tham số của thẻ BODY: Các tham số ý nghĩa LINK Chỉ định màu của văn bản siêu liên kết ALINK Chỉ định màu của văn bản siêu liên kết đang đang chọn VLINK Chỉ định màu của văn bản siêu liên kết đã từng mở BACKGROUND Chỉ định địa chỉ của ảnh dùng làm nền BGCOLOR Chỉ định màu nền TEXT Chỉ định màu của văn bản trong tài liệu SCROLL YES/NO - Xác định có hay không thanh cuộn TOPMARGIN Lề trên RIGHTMARGIN Lề phải LEFTMARGIN Lề trái 12
  13. 4.5. Thẻ định dạng kiểu chữ, cỡ chữ cho văn bản. Cú pháp: 4.6. Thẻ liên kết trong web. Văn bản siêu liên kết hay còn gọi là siêu văn bản là một từ, một cụm từ hay một câu trên trang Web được dùng để liên kết tới một trang Web khác. Siêu văn bản là môi trường trong đó chứa các liên kết (link) của các thông tin. Do WWW cấu thành từ nhiều hệ thống khác nhau, cần phải có một quy tắc đặt tên thống nhất cho tất cả các văn bản trên Web. Quy tắc đặt tên đó là URL (Universal Resource Locator). Các thành phần của URL được minh hoạ ở hình trên. Dịch vụ: Là thành phần bắt buộc của URL. Nó xác định cách thức trình duyệt của máy khách liên lạc với máy phục vụ như thế nào để nhận dữ liệu. Có nhiều dịch vụ như http, wais, ftp, gopher, telnet. Tên hệ thống : Là thành phần bắt buộc của URL. Có thể là tên miền đầy đủ của máy phục vụ hoặc chỉ là một phần tên đầy đủ – trường hợp này xảy ra khi văn bản được yêu cầu vẫn nằm trên miền của bạn. Tuy nhiên nên sử dụng đường dẫn đầy đủ. Cổng : Không là thành phần bắt buộc của URL. Cổng là địa chỉ socket của mạng dành cho một giao thức cụ thể. Giao thức http ngầm định nối với cổng 8080. Đường dẫn thư mục : Là thành phần bắt buộc của URL. Phải chỉ ra đường dẫn tới file yêu cầu khi kết nối với bất kỳ hệ thống nào. Có thể đường dẫn trong 13
  14. URL khác với đường dẫn thực sự trong hệ thống máy phục vụ. Tuy nhiên có thể rút gọn đường dẫn bằng cách đặt biệt danh (alias). Các thư mục trong đường dẫn cách nhau bởi dấu gạch chéo (/). Tên file : Không là thành phần bắt buộc của URL. Thông thường máy phục vụ được cấu hình sao cho nếu không chỉ ra tên file thì sẽ trả về file ngầm định trên thư mục được yêu cầu. File này thường có tên là index.html, index.htm, default.html hay default.htm. Nếu cũng không có các file này thì thường kết quả trả về là danh sách liệt kê các file hay thư mục con trong thư mục được yêu cầu Các tham số : Không là thành phần bắt buộc của URL. Nếu URL là yêu cầu tìm kiếm trên một cơ sở dữ liệu thì truy vấn sẽ gắn vào URL, đó chính là đoạn mã đằng sau dấu chấm hỏi (?).URL cũng có thể trả lại thông tin được thu thập từ form. Trong trường hợp dấu thăng (#) xuất hiện đoạn mã đăng sau là tên của một vị trí (location) trong file được chỉ ra. Để tạo ra một siêu văn bản chúng ta sử dụng thẻ Ý nghĩa các tham số: HREF Địa chỉ của trang Web được liên kết, là một URL nào đó. NAME Đặt tên cho vị trí đặt thẻ. TABLEINDEX Thứ tự di chuyển khi ấn phím Tab TITLE Văn bản hiển thị khi di chuột trên siêu liên kết. TARGET Mở trang Web được liên trong một cửa sổ mới (_blank) hoặc trong cửa sổ hiện tại (_self), trong một frame (tên frame). 4.7. Thẻ kết nối Mailto. Nếu đặt thuộc tính href= của thẻ giá trị mailto:address@domain thì khi kích hoạt kết nối sẽ kích hoạt chức năng thư điện tử của trình duyệt. 14
  15. Trang WEB này được WEBMASTER bảo trì 4.8. Vẽ đường thẳng nằm ngang. Cú pháp: Ý nghĩa các tham số: ALIGN Căn lề (căn trái, căn phải, căn giữa) COLOR Đặt màu cho đường thẳng NOSHADE Không có bóng SIZE Độ dày của đường thẳng WIDTH Chiều dài (tính theo pixel hoặc % của bề rộng cửa sổ trình duyệt). Thẻ này giống như thẻ BR, nó cũng không có thẻ kết thúc tương ứng. 5. Thẻ chèn video, âm thanh, hình ảnh. 5.1. Giới thiệu. Liên kết với file đa phương tiện cũng tương tự như liên kết bình thường. Tuy vậy phải đặt tên đúng cho file đa phương tiện. Phần mở rộng của file phải cho biết kiểu của file. KIỂU PHẦN MỞ MÔ TẢ RỘNG Image/GIF .gif Viết tắt của Graphics Interchange Format. Khuôn dạng này xuất hiện khi mọi người có nhu cầu trao đổi ảnh trên nhiều hệ thống khác nhau. Nó được sử dụng trên tất cả các hệ thống hỗ trợ giao diện đồ hoạ. Định dạng GIF là định dạng chuẩn cho mọi trình duyệt WEB. Nhược điểm của nó là chỉ thể hiện được 256 màu. Mở rộng của chuẩn này là GIF89, được thêm nhiều chức năng cho các ứng dụng đặc biệt như làm ảnh nền trong suốt - tức là ảnh có thể nổi bằng cách làm màu nền giống với màu nền của trình duyệt. Image/JPEG .jpeg Viết tắt của Joint Photographic Expert Group. Là khuôn dạng ảnh khác nhưng có thêm khả năng nén.Ưu điểm nổi bật của khuôn dạng này là lưu trữ 15
  16. được hàng triệu màu và độ nén cao nên kích thước file ảnh nhỏ hơn và thời gian download nhanh hơn. Nó là cơ sở cho khuôn dạng MPEG. Tất cả các trình duyệt đều có khả năng xem ảnh JPEG. Image/TIFF .tiff Viết tắt của Tagged Image File Format. Được Microsoft thiết kế để quét ảnh từ máy quét cũng như tạo các ấn phẩm. Text/HTML .HTML, .htm PostScript .eps, .ps Được tạo ra để hiển thị và in các văn bản có chất lượng cao. Adobe .pdf Viết tắt của Portable Document Format. Acrobat Acrobat cũng sử dụng các siêu liên kết ngay trong văn bản cũng giống như HTML. Từ phiên bản 2.0, các sản phẩm của Acrobat cho phép liên kết giữa nhiều văn bản. Ưu điểm lớn nhất của nó là khả năng WYSISYG. Video/MPEG .mpeg Viết tắt của Motion Picture Expert Group, là định dạng dành cho các loại phim (video). Đây là khuôn dạng thông dụng nhất dành cho phim trên WEB. Video/AVI .avi Là khuôn dnạg phim do Microsoft đưa ra. Video/QuickTi .mov Do Apple Computer đưa ra, chuẩn video này được me cho là có nhiều ưu điểm hơn MPEG và AVI. Mặc dù đã được tích hợp vào nhiều trình duyệt nhưng vẫn chưa phổ biến bằng hai loại định dạng trên. Sound/AU .au Sound/MIDI .mid Là khuôn dạng dành cho âm nhạc điện tử hết sức thông dụng được nhiều trình duyệt trên các hệ thống khác nhau hỗ trợ. File Midi được tổng hợp số hoá trực tiếp từ máy tính. Sound/RealA .ram Định dạng audio theo dòng. Một bất tiện khi sử dụng udio các định dạng khác là file âm thanh thường có kích thước lớn - do vậy thời gian tải xuống lâu, Trái lại audio dòng bắt đầu chơi ngay khi tải được một phần file trong khi vẫn tải về các phần khác.Mặc dù file theo định dạng này không nhỏ hơn so với các định dạng khác song chính khả năng dòng đã khiến định dạng này phù hợp với khả năng chơi ngay lập tức. VRML .vrml Viết tắt của Virtual Reality Modeling Language. Các file theo định dạng này cũng giống như HTML. Tuy nhiên do trình duyệt có thể hiển thị được cửa sổ 3 chiều nên người xem có thể cảm nhận được cảm giác ba chiều. 5.2. Đưa âm thanh vào trong trang web. Cú pháp: 16
  17. Thẻ này không có thẻ kết thúc tương ứng ( ). Để chơi lặp lại vô hạn cần chỉ định LOOP = -1 hoặc LOOP = INFINITE. Thẻ BGSOUND phải được đặt trong phần mở đầu (tức là nằm trong cặp thẻ HEAD). 5.3. Đưa hình ảnh, video vào trang web. Để chèn một file ảnh (.jpg, .gif, .bmp) hoặc video (.mpg, .avi) vào tài liệu HTML, bạn có thể sử dụng thẻ IMG. Cú pháp: Trong đó: ALIGN = TOP/ MIDDLE/ Căn hàng văn bản bao quanh ảnh BOTTOM/ LEFT/ RIGHT ALT = text Chỉ định văn bản sẽ được hiển thị nếu chức năng show picture của browser bị tắt đi hay hiển thị thay thế cho ảnh trên những trình duyệt không có khả năng hiển thị đồ hoạ. Văn bản này còn được gọi là nhãn của ảnh. Đối với trình duyệt có khả năng hỗ trợ đồ hoạ, dòng văn bản này sẽ hiện lên khi di chuột qua ảnh hay được hiển thị trong vùng của ảnh nếu ảnh chưa được tải về hết. Chú ý phải đặt văn bản trong hai dấu nháy kép nếu triong văn bản chứa dấu cách hay các ký tự đặc biệt - trong trường hợp ngược lại có thể bỏ dấu nháy kép. BORDER = n Đặt kích thước đường viền được vẽ quanh ảnh (tính theo pixel). SRC = url Địa chỉ của file ảnh cần chèn vào tài liệu. WIDTH/HEIGHT Chỉ định kích thước của ảnh được hiển thị. HSPACE/VSPACE Chỉ định khoảng trống xung quanh hình ảnh (tính theo pixel) theo bốn phía trên, dưới, trái, phải. TITLE = title Văn bản sẽ hiển thị khi con chuột trỏ trên ảnh DYNSRC = url Địa chỉ của file video. START = Chỉ định file video sẽ được chơi khi tài liệu được FILEOPEN/MOUSEOVER mở hay khi trỏ con chuột vào nó. Có thể kết hợp cả hai giá trị này nhưng phải phân cách chúng 17
  18. bởi dấu phẩy. LOOP = n/INFINITE Chỉ định số lần chơi. Nếu LOOP = INFINITE thì file video sẽ được chơi vô hạn lần. 6. Thẻ định dạng bảng biểu (Table) Sau đây là các thẻ tạo bảng chính: Định nghĩa một bảng Định nghĩa một hàng trong bảng Định nghĩa một ô trong hàng Định nghĩa ô chứa tiêu đề của cột Tiêu đề của bảng Cú pháp: Tiêu đề của bảng biểu Định nghĩa các dòng Định nghĩa các ô trong dòng Nội dung của ô 18
  19. Ý nghĩa các tham số: ALIGN / VALIGN Căn lề cho bảng và nội dung trong mỗi ô. BORDER Kích thước đường kẻ chia ô trong bảng, được đo theo pixel. Giá trị 0 có nghĩa là không xác định lề, giữa các ô trong bảng chỉ có một khoảng trắng nhỏ để phân biệt. Nếu chỉ để border thì ngầm định border=1. Với những bảng có cấu trúc phức tạp, nên đặt lề để người xem có thể phân biệt rõ các dòng và cột. BORDERCOLOR Màu đường kẻ BORDERCOLORDARK Màu phía tối và phía sáng cho đường kẻ nổi. BORDERCOLORLIGHT BACKGROUND Địa chỉ tới tệp ảnh dùng làm nền cho bảng BGCOLOR Màu nền CELLSPACING Khoảng cách giữa các ô trong bảng CELLPADDING Khoảng cách giữa nội dung và đường kẻ trong mỗi ô của bảng. COLSPAN Chỉ định ô sẽ kéo dài trong bao nhiêu cột ROWSPAN Chỉ định ô sẽ kéo dài trong bao nhiêu hàng 7. Thẻ định dạng Form. 7.1. Tạo Form. Để tạo ra một form trong tài liệu HTML, chúng ta sử dụng thẻ FORM với cú pháp như sau: Cú pháp: Trong đó ACTION Địa chỉ sẽ gửi dữ liệu tới khi form được submit (có thể là địa chỉ tới một chương trình CGI, một trang ASP ). METHOD Phương thức gửi dữ liệu. NAME Tên của form. TARGET Chỉ định cửa sổ sẽ hiển thị kết quả sau khi gửi dữ liệu từ form đến server. 19
  20. Đặt các đối tượng điểu khiển (như hộp văn bản, ô kiểm tra, nút bấm ) vào trang Web Cú pháp thẻ INPUT: 7.2. Tạo các thẻ nhập văn bản (Text) Cú pháp: Văn bản ban đầu 7.2. Tạo một danh sách lựa chọn (Radio Button, Check box) Cú pháp: Tên mục chọn thứ nhất Tên mục chọn thứ hai 20
  21. Bài 2. Làm việc với CSS Mã bài: MĐ 16 – B02 Giới thiệu: Trong bài học này chúng ta sẽ đi tìm hiểu về CSS, các khái niệm về CSS, các thành phần cơ bản của nó như thế nào? Các cách tạo được CSS ra sao? Ứng dụng CSS vào trong một Website như thế nào? Mục tiêu: Sau khi học xong bài này người học có khả năng: - Hiểu được khái niệm và các thành phần cơ bản của CSS; - Tạo được các tệp CSS theo yêu cầu; - Xây dựng được website với CSS; - Đảm bảo an toàn cho người và trang thiết bị. 1. Giới thiệu về CSS. 1.1. CSS là gì? Trong lĩnh vực xây dựng, chúng ta có trang trí nội thất; trong lĩnh vực thẩm mỹ - làm đẹp, chúng ta có kỹ thuật make-up; còn trong lĩnh vực thiết kế web chúng ta có CSS. Đây chỉ là một định nghĩa giàu hình ảnh của Pearl thôi (nhưng cũng thực tế nhỉ (smile). Còn CSS (Cascading Style Sheets mà Pearl tạm dịch là tờ mẫu theo Style Sheets) là một ngôn ngữ quy định cách trình bày cho các tài liệu viết bằng HTML, XHTML, XML, SVG, hay UML, 1.2. Tại sao sử dụng CSS Nếu bạn đã từng học qua HTML thì cũng biết HTML cũng hỗ trợ một số thuộc tính định dạng cơ bản cho text, picture, table, nhưng nó không thật sự phong phú và chính xác như nhau trên mọi hệ thống. CSS cung cấp cho bạn hàng trăm thuộc tính trình bày dành cho các đối tượng với sự sáng tạo cao trong kết hợp các thuộc tính giúp mang lại hiệu quả. Ngoài ra, hiện tại CSS đã được hỗ trợ bởi tất cả các trình duyệt, nên bạn hoàn toàn có thể tự tin trang web của mình có thể hiển thị hầu như “như nhau” dù trên một hệ thống sử dụng Windows, Linux hay trên một máy Mac miễn là bạn đang sử dụng một phiên bản trình duyệt mới nhất. Sử dụng các mã định dạng trực tiếp trong HTML tốn hao nhiều thời gian thiết kế cũng như dung lượng lưu trữ trên đĩa cứng. Trong khi đó CSS đưa ra phương thức “tờ mẫu ngoại” giúp áp dụng một khuôn mẫu chuẩn từ một file CSS ở ngoài. Nó thật sự có hiệu quả đồng bộ khi bạn tạo một website có hàng trăm trang hay cả khi bạn muốn thay đổi một thuộc tính trình bày nào đó. Hãy thử tưởng tượng bạn có một website với hàng trăm trang và bạn muốn thay đổi font chữ hay màu chữ cho một thành phần nào đó. Đó thật sự sẽ là một công việc buồn chán và tốn nhiều thời gian. Nhưng với việc sử dụng CSS việc đó là hoàn toàn đơn giản cũng như là bạn có một trò ma thuật nào đó. Ngoài ra, CSS còn cho phép bạn áp đặt những kiểu trình bày thích hợp hơn cho 21
  22. các phương tiện khác nhau như màn hình máy tính, máy in, điện thoại, CSS được cập nhật liên tục mang lại các trình bày phức tạp và tinh vi hơn. 1.3. Học CSS cần những gì? Thật sự không có một điều kiện gì được quy định khi học CSS. Nhưng ở một khía cạnh nào đó thì một sự chuẩn bị cho một cuộc hành trình dù là dễ nhất vẫn không thừa vì ít nhất nó sẽ giúp bạn làm tốt hơn. Hành trang thứ nhất mà bạn nên có là một kiến thức về HTML, nó không thật sự cần thiết nếu bạn chỉ dùng CSS để trình bày cho một trang HTML có sẵn (như làm skin cho blog chẳng hạn), nhưng bạn vẫn cần biết ý nghĩa một số thẻ HTML, nó sẽ có ích khi bạn viết CSS. Tuy nhiên, nếu bạn muốn tự thiết kế, trình bày một trang web của riêng mình thì tùy theo quy mô trang web, bạn cần phải học thêm cả HTML, XHMTL, Javascript và một số ngôn ngữ lập trình web khác. Hành trang thứ hai chính là một trình soạn thảo văn bản để bạn có thể viết mã CSS. Ở đây, Pearl khuyên bạn nên sử dụng một trình soạn thảo đơn giản như Notepad, Wordpad trong Windows hay Pico trong Linux, Simple Text trong Mac. Nó sẽ giúp bạn chắc là code là của bạn và không có bất kỳ một sự can thiệt nào từ chương trình như khi dùng DreamWeaver, FrontPage, Golive, Hành trang thứ ba của bạn chính lả một phiên bản mới nhất của trình duyệt mà bạn thường dùng. Và một điều nữa mà Pearl muốn đề nghị đó là các bạn hãy dành một ít thời gian để thực hành CSS sau mỗi bài học nó sẽ thật sự có ích cho bạn. Thực hành chẳng những giúp bạn vận dụng nhuần nhuyễn các bài học mà còn có tác dụng explain ngược lại những lý thuyết mà bạn chưa hiểu. Bây giờ nếu bạn đã thật sự chuẩn bị chúng ta hãy chuyển qua chương tiếp theo để thật sự bước chân vào thế giới CSS. 2. Một số quy ước về CSS. 2.1. Cú pháp của CSS. Để tìm hiểu cú pháp CSS chúng ta hãy thử xem một ví dụ sau. Ví dụ: Để định màu nền cho một trang web là xanh nhạt (light cyan) chúng ta dùng code sau: + Trong HTML: + Trong CSS: body { background-color:#00BFF3; } Nhìn qua ví dụ trên ít nhiều chúng ta cũng thấy được mối tương đồng giữa các thuộc tính trong HTML và CSS cho nên nếu bạn đã học qua HTML thì cũng sẽ rất dễ dàng tiếp thu CSS. Đó là một chút lợi thế của câu chuyện hành trình mà Pearl đã nói ở bài trước. Nhưng không sao cả, bây giờ hãy nhìn vào ví dụ của chúng ta và các bạn xem nó có giống với cấu trúc sau không nhé. 22
  23. Cú pháp CSS cơ bản: Selector { property:value; } Trong đó: + Selector: Các đối tượng mà chúng ta sẽ áp dụng các thuộc tính trình bày. Nó là các tag HTML, class hay id (chúng ta sẽ học về 2 thành phần này ở bài học sau). Ví dụ: body, h2, p, img, #title, #content, .username, Trong CSS ngoài viết tên selector theo tên tag, class, id. Chúng ta còn có thể viết tên selector theo phân cấp như để chỉ các ảnh ở trong #entry, chúng ta viết selector là #entry img, như vậy thì các thuộc tính chỉ định sẽ chỉ áp dụng riêng cho các ảnh nằm trong #entry. Khi viết tên cho class, đôi khi sẽ có nhiều thành phần có cùng class đó, ví dụ như thẻ img và thẻ a cùng có class tên vistors nhưng đây lại là hai đối tượng khác nhau, 1 cái là ảnh của người thăm, 1 cái là liên kết tới trang người thăm. Nên nếu khi viết CSS ta ghi là .visitors { width:50 } thì sẽ ảnh hưởng tới cả hai thành phần. Nên trong trường hợp này, nếu bạn có ý dùng CSS đó chỉ riêng phần ảnh thì chỉ nền ghi là img .visitors thôi. Một lối viết tên selector nữa đó là dựa trên tên các thuộc tính có trong HTML. Ví dụ trong HTML ta có đoạn mã như vầy: . Để áp dụng thuộc tính CSS cho riêng ô tìm kiếm này chúng ta sẽ dùng selector input[name=”Search”]. Ngoài việc viết tên selector cụ thể, chúng ta cũng có thể dùng một selector đại diện như * { color:red } sẽ tác động đến tất cả các thành phần có trên trang web làm cho chúng có text màu đỏ. + Property: Chính là các thuộc tính quy định cách trình bày. Ví dụ: background- color, font-family, color, padding, margin, Mỗi thuộc tính CSS phải được gán một giá trị. Nếu có nhiều hơn một thuộc tính cho một selector thì chúng ta phải dùng một dấu ; (chấm phẩy) để phân cách các thuộc tính. Tất cả các thuộc tính trong một selector sẽ được đặt trong một cặp ngoặc nhọn sau selector. Ví dụ: body { background:#FFF; color:#FF0000; font-size:14pt } Để dễ đọc hơn, bạn nên viết mỗi thuộc tính CSS ở một dòng. Tuy nhiên, nó sẽ làm tăng dung lượng lưu trữ CSS của bạn. Ví dụ: body { background:#FFF; bolor:#FF0000; font-size:14pt } Đối với một trang web có nhiều thành phần có cùng một số thuộc tính, chúng ta có thể thực hiện gom gọn lại như sau: h1 { color:#0000FF; text-transform:uppercase } h2{ 23
  24. color:#0000FF; text-transform: uppercase; } h3{ color:#0000FF; text-transform: uppercase; } h1, h2, h3 { color:#0000FF; text-transform: uppercase; } + Value: Giá trị của thuộc tính. Ví dụ: như ví dụ trên value chính là #FFF dùng để định màu trắng cho nền trang. Đối với một giá trị có khoảng trắng, bạn nên đặt tất cả trong một dấu ngoặc kép. Ví dụ: font-family:”Times New Roman” Đối với các giá trị là đơn vị đo, không nên đặt một khoảng cách giữa số đo với đơn vị của nó. Ví dụ: width:100 px. Nó sẽ làm CSS của bạn bị vô hiệu trên Mozilla/Firefox hay Netscape. Chú thích trong CSS: Cũng như nhiều ngôn ngữ web khác. Trong CSS, chúng ta cũng có thể viết chú thích cho các đoạn code để dễ dàng tìm, sửa chữa trong những lần cập nhật sau. Chú thích trong CSS được viết như sau /* Nội dung chú thích */ Ví dụ: /* Màu chữ cho trang web */ body { color:red } 2.2. Đơn vị CSS. Trong CSS2 hỗ trợ các loại đơn vị là đơn vị đo chiều dài và đơn vị đo góc, thời gian, cường độ âm thanh và màu sắc. Tuy nhiên, sử dụng phổ biến nhất vẫn là đơn vị đo chiều dài và màu sắc. Sau đây là bảng liệt kê các đơn vị chiều dài và màu sắc dùng trong CSS. Đơn vị chiều dài Đơn vị Mô tả Đơn vị Mô tả % Phần trăm ex 1 ex bằng chiều cao của chữ x in in Inch (1 inch = 2.54 cm) thường của font hiện hành. Do đó, đơn vị này không những phụ cm Centimeter 24
  25. mm Millimeter thuộc trên kích cỡ font chữ mà còn phụ thuộc loại font chữ vì cùng 1 cỡ 14px nhưng chiều cao chữ x của font Times và font Tohama là khác nhau. em 1 em tương đương kích thước pt Point (1 pt = 1/72 inch) font hiện hành, nếu font hiện hành có pc Pica (1 pc = 12 pt) kích cỡ 14px thì 1 em px Pixels (điểm ảnh trên màn = 14 px. Đây là một đơn vị rất hữu hình máy tính) ích trong việc hiển thị trang web. Đơn vị màu sắc Đơn vị Mô tả Color-name Tên màu tiếng Anh. Ví dụ: black, white, red, green, blue, cyan, magenta, RGB (r,g,b) Màu RGB với 3 giá trị R, G, B có trị từ 0 – 255 kết hợp với nhau tạo ra vô số màu. RGB Màu RGB với 3 giá trị R, G, B có trị từ 0 – 100% kết hợp. (%r,%g,%b) Hexadecimal Mã màu RGB dạng hệ thập lục. Ví dụ: #FFFFFF: trắng, RGB #000000: đen, #FF00FF: đỏ tươi. 2.3. Vị trí đặt CSS. Ở trên chúng ta đã tìm hiểu về cú pháp viết CSS, nhưng còn đặt nó ở đâu trong tài liệu HTML? Trong phần này, Pearl xin giới thiệu với các bạn về vấn đề này. Chúng ta có ba cách khác nhau để nhúng CSS vào trong một tài liệu HTML + Cách 1: Nội tuyến (kiểu thuộc tính) Đây là một phương pháp nguyên thủy nhất để nhúng CSS vào một tài liệu HTML bằng cách nhúng vào từng thẻ HTML muốn áp dụng. Và dĩ nhiên trong trường hợp này chúng ta sẽ không cần selector trong cú pháp. Lưu ý: Nếu bạn muốn áp dụng nhiều thuộc tính cho nhiều thẻ HTML khác nhau thì không nên dùng cách này. Ở ví dụ sau chúng ta sẽ tiến hành định nền màu trắng cho trang và màu chữ xanh lá cho đoạn văn bản như sau: Ví dụ 25
  26. ^_^ Welcome To WallPearl’s Blog ^_^ + Cách 2: Bên trong (thẻ style) Thật ra nếu nhìn kỹ chúng ta cũng nhận ra đây chỉ là một phương cách thay thế cách thứ nhất bằng cách rút tất cả các thuộc tính CSS vào trong thẻ style (để tiện cho công tác bảo trì, sửa chữa ấy mà). Cũng ví dụ làm trang web có màu nền trắng, đoạn văn bản chữ xanh lá, chúng ta sẽ thể hiện như sau: Ví dụ body { background-color:#FFF } p { color:#00FF00 } ^_^ Welcome To WallPearl’s Blog ^_^ Lưu ý: Thẻ style nên đặt trong thẻ head. Đối với những trình duyệt cũ, không thể nhận ra thẻ . Theo mặc định, thì khi một trình duyệt không nhận ra một thẻ thì nó sẽ hiện ra phần nội dung chứa trong thẻ. Như ở ví dụ trên, nếu trình duyệt không hỗ trợ thẻ style thì 2 dòng CSS: body {background-color:#FFF } p { color:#00FF00 } sẽ hiện ra trên trình duyệt. Để tránh tình trạng này, bạn nên đưa vào thêm dấu ở sau khối code CSS. Như ví dụ trên sẽ viết lại là: + Cách 3: Bên ngoài (liên kết với một file CSS bên ngoài) Tương tự như cách 2 nhưng thay vì đặt tất cả các mã CSS trong thẻ style chúng ta sẽ đưa chúng vào trong một file CSS (có phần mở rộng .css) bên ngoài và liên kết nó vào trang web bằng thuộc tính href trong thẻ link. Đây là cách làm được khuyến cáo, nó đặc biệt hữu ích cho việc đồng bộ hay bảo trì một website lớn sử dụng cùng một kiểu mẫu. Các ví dụ trong sách này cũng được trình bày theo kiểu này. 26
  27. Nào bây giờ chúng ta hãy mở Notepad lên và thử thực hiện theo ví dụ sau: Đầu tiên chúng ta sẽ tạo ra một file vidu.html có nội dung như sau: Ví dụ ^_^ Welcome To WallPearl’s Blog ^_^ Sau đó hãy tạo một file style.css với nội dung: body { background-color:#FFF } p { color:#00FF00 } Hãy đặt 2 file này vào cùng một thư mục, mở file vidu.html trong trình duyệt của bạn và xem thành quả. Lưu ý: Để lưu 1 file với 1 đuôi khác .txt trong Notepad chúng ta chọn Save as type là All Files. Có thể chọn Encoding là UTF-8, nếu bạn chú thích CSS bằng tiếng 27
  28. Việt. Trong CSS chúng ta còn có thể sử dụng thuộc tính @import để nhập một file CSS vào CSS hiện hành. Cú pháp: @import url(link) 2.4. Sự ưu tiên. Trước khi thực thi CSS cho một trang web. Trình duyệt sẽ đọc toàn bộ CSS mà trang web có thể được áp dụng, bao gồm: CSS mặc định của trình duyệt, file CSS bên ngoài liên kết vào trang web, CSS nhúng trong thẻ và các CSS nội tuyến. Sau đó, trình duyệt sẽ tổng hợp toàn bộ CSS này vào một CSS ảo, và nếu có các thuộc tính CSS giống nhau thì thuộc tính CSS nào nằm sau sẽ được ưu tiên sử dụng (cái này cũng giống như chương trình “Ai Là Triệu Phú” trên truyền hình vậy, chỉ câu trả lời sau cùng mới được chấp nhận (smile)). Theo nguyên tắc đó trình duyệt của bạn sẽ ưu tiên cho các CSS nội tuyến > CSS bên trong > CSS bên ngoài > CSS mặc định của trình duyệt. Ví dụ: Trong một trang web có liên kết tới file style.css có nội dung như sau: p { color:#333; text-align:left; width:500px } trong thẻ giữa thẻ cũng có một đoạn CSS liên quan: p { background-color:#FF00FF; text-align:right; width:100%; height:150px } trong phần nội dung trang web đó cũng có sử dụng CSS nội tuyến: <p style=”height:200px; text-align:center; border:1px solid #FF0000; color:#000” } Khi thực thi CSS trình duyệt sẽ đọc hết tất cả các nguồn chứa style rồi sẽ tổng hợp lại vào một CSS ảo và nếu có sự trùng lắp các thuộc tính CSS thì nó sẽ lấy thuộc tính CSS có mức ưu tiên cao hơn. Như ví dụ trên chúng ta sẽ thấy CSS cuối cùng mà phần tử p nhận được là: p { background-color:#FF00FF; width:100%; height:200px; text-align:center; border:1px solid #FF0000; color:#000 } Vậy có cách nào để thay đổi độ ưu tiên cho một thuộc tính nào đó? 28
  29. Thật ra thì trong CSS đã có sẵn một thuộc tính giúp chúng ta thực hiện điều này, đó chính là thuộc tính !important. Chỉ cần bạn đặt thuộc tính này sau một thuộc tính nào đó theo cú pháp selector { property:value !important } thì trình duyệt sẽ hiểu đây là một thuộc tính được ưu tiên. Bây giờ, chúng ta cùng xét lại ví dụ trên nhưng có đặt thêm một số thuộc tính !important vào xem kết quả như thế nào nhé. p { width:500px; text-align:left !important; color:#333 !important } p { background-color:#FF00FF; width:100%; height:150px !important; text-align:right; } <p style=”text-align:center; height:200px; border:1px solid #FF0000; color:#000” } Phần CSS sẽ tác động lên thuộc tính p là: p { background-color:#FF0000; width:100%; height:150px !important; text-align:left !important; border:1px solid #FF0000; color:#333 !important } Lưu ý: Cùng một thuộc tính cho một selector thì nếu cả hai thuộc tính đều đặt !important thì cái sau được lấy. 3. Màu chữ và màu nền. 3.1. Thuộc tính Background – color. Thuộc tính background-color giúp định màu nền cho một thành phần trên trang web. Các giá trị mã màu của background-color cũng giống như color nhưng có thêm giá trị transparent để tạo nền trong suốt. Ví dụ sau đây sẽ chỉ cho chúng ta biết cách sử dụng thuộc tính background-color để định màu nền cho cả trang web, các thành phần h1, h2 lần lượt là xanh lơ, đỏ và cam. body{ background-color:cyan } h1{ background-color:red 29
  30. } h2{ background-color:orange } 3.2. Thuộc tính Background – image. Việc sử dụng ảnh nền giúp trang web trông sinh động và bắt mắt hơn. Để chèn ảnh nền vào một thành phần trên trang web chúng ta sử dụng thuộc tính background-image. Bây giờ chúng ta sẽ cùng làm một ví dụ minh họa để xem thuộc tính background-image sẽ hoạt động ra sao. Đầu tiên hãy tìm một tấm ảnh mà bạn thích, ở đây Pearl sẽ lấy tấm ảnh logo của blog Pearl Sau đó, chúng ta sẽ viết CSS để đặt logo này làm ảnh nền trang web như sau: body{ background-image:url(logo.png) } h1{ background-color:red } h2{ background-color:orange } p{ background-color:FDC689 } Như các bạn đã thấy chúng ta sẽ phải chỉ định đường dẫn của ảnh trong cặp ngoặc đơn sau url. Do ảnh đặt trong cùng thư mục với file style3.css nên chúng ta chỉ cần ghi abc.jpg. Nhưng nếu chúng ta tạo thêm một thư mục img trong thư mục thì chúng ta sẽ phải ghi là background- image:url(img/abc.jpg). Đôi khi nếu không chắc lắm bạn có thể dùng đường 30
  31. dẫn tuyệt đối cho ảnh. 3.3. Thuộc tính Background – repeat. Nếu sử dụng một ảnh có kích thước quá nhỏ để làm nền cho một đối tượng lớn hơn thì theo mặc định trình duyệt sẽ lặp lại ảnh nền để phủ kín không gian còn thừa. Thuộc tính background-repeat cung cấp cho chúng ta các điều khiển giúp kiểm soát trình trạng lặp lại của ảnh nền. Thuộc tính này có 4 giá trị: + repeat-x: Chỉ lặp lại ảnh theo phương ngang. + repeat-y: Chỉ lặp lại ảnh theo phương dọc. + repeat: Lặp lại ảnh theo cả 2 phương, đây là giá trị mặc định. + no-repeat: Không lặp lại ảnh. Bây giờ, chúng ta hãy thêm thuộc tính background-repeat này vào ví dụ trên thử xem sao. body { background-image:url(logo.png); background-repeat:no-repeat; } Các bạn xem, có phải ảnh nền đã không bị lặp lại như trong ví dụ trước, hãy thử thay đổi qua lại giữa các giá trị và xem kết quả tạo ra. 3.4. Thuộc tính Background – attachment. Background-attachment là một thuộc tính cho phép bạn xác định tính cố định của ảnh nền so với với nội dung trang web. Thuộc tính này có 2 giá trị: + scroll: Ảnh nền sẽ cuộn cùng nội dung trang web, đây là giá trị mặc định. + fixed: Cố định ảnh nền so với nội dung trang web. Khi áp dụng giá trị này, ảnh nền sẽ đứng yên khi bạn đang cuộn trang web. 3.5 Thuộc tính Background – position. Theo mặc định ảnh nền khi được chèn sẽ nằm ở góc trên, bên trái màn hình. Tuy nhiên với thuộc tính background-position bạn sẽ có thể đặt ảnh nền ở bất cứ vị trí nào (trong không gian của thành phần mà nó làm nền). Background-position sẽ dùng một cặp 2 giá trị để biểu diễn tọa độ đặt ảnh nền. Có khá nhiều kiểu giá trị cho thuộc tính position. Như đơn vị chính xác như centimeters, pixels, inches, hay các đơn vị qui đổi như %, hoặc các vị trí đặt biệt như top, bottom, left, right. Ví dụ: Giá trị Ý nghĩa Background-position:5cm 2cm Ảnh được định vị 5cm từ trái qua và 2cm từ trên xuống. Background-position:20% 30% Ảnh được định vị 20% từ trái qua và 30% từ trên xuống. Background-position:bottom left Ảnh được định vị ở góc trái phía dưới 31
  32. Thuộc tính background rút gọn Khi sử dụng quá nhiều thuộc tính CSS sẽ gây khó khăn cho người đọc, công tác chỉnh sửa cũng như tốn nhiều dung lượng ổ cứng cho nên CSS đưa ra một cấu trúc rút gọn cho các thuộc tính cùng nhóm. Ví dụ: Chúng ta có thể nhóm lại đoạn CSS sau background-color:transparent; background-image: url(logo.png); background-repeat: no-repeat; background-attachment: fixed; background-position: right bottom; thành một dòng ngắn gọn: background:transparent url(logo.png) no-repeat fixed right bottom; Từ ví dụ trên chúng ta có thể khái quát cấu trúc rút gọn cho nhóm background: background: | | | | Theo mặc định thì các thuộc tính không được đề cập sẽ nhận các giá trị mặc định. Ví dụ: Chúng ta sẽ bỏ qua hai thuộc tính background-attachment và background- position ở dòng mã trên đi: background:transparent url(logo.png) no-repeat; Hai thuộc tính không được chỉ định sẽ đơn thuần được thiết lập tới giá trị mặc định mà chúng ta điều biết là scroll và top left. Ở bài học trước, chúng ta đã được tìm hiểu về cách định dạng màu chữ bằng CSS. Trong bài này, chúng ta sẽ tiếp tục tìm hiểu thêm về các thuộc tính CSS liên quan tới font chữ của các thành phần trong một trang web. 4. Làm việc với các thuộc tính Font chữ. 4.1. Thuộc tính font – family Thuộc tính font-family có công dụng định nghĩa một danh sách ưu tiên các font sẽ được dùng để hiển thị một thành phần trang web. Theo đó, thì font đầu tiên được liệt kê trong danh sách sẽ được dùng để hiển thị trang web. Nếu như trên máy tính truy cập chưa cài đặt font này thì font thứ hai trong danh sách sẽ được ưu tiên cho đến khi có một font phù hợp. Có hai loại tên font được dùng để chỉ định trong font-family: family- names và generic families. + Family-names: Tên cụ thể của một font. Ví dụ: Arial, Verdana, Tohama, + Generic families: Tên của một họ gồm nhiều font. Ví dụ: sans-serif, serif, Khi lên danh sách font dùng để hiển thị một trang web bạn sẽ chọn những font mong muốn trang web sẽ được hiển thị để đặt ở các vị trí ưu tiên. Tuy nhiên, có thể những font này sẽ không thông dụng lắm nên bạn cũng cần chỉ 32
  33. định thêm một số font thông dụng dự phần như Arial, Tohama hay Times New Roman và bạn cũng được đề nghị đặt vào danh sách font của mình một generic families (thường thì nó sẽ có độ ưu tiên thấp nhất). Thực hiện theo cách này thì sẽ đảm bảo trang web của bạn có thể hiển thị tốt trên bất kỳ hệ thống nào. Ví dụ sau chúng ta sẽ viết CSS để quy định font chữ dùng cho cả trang web là Times New Roman, Tohama, sans-serif, và font chữ dùng để hiển thị các tiêu đề h1, h2, h3 sẽ là Arial, Verdana và các font họ serif. body { font-family:”Times New Roman”,Tohama,sans-serif } h1, h2, h3 { font-family:arial,verdana,serif } Mở trang web trong trình duyệt và kiểm tra kết quả. Chúng ta thấy phần tiêu đề sẽ được ưu tiên hiển thị bằng font Arial, nếu trên máy không có font này thì font Verdana sẽ được ưu tiên và kế đó sẽ là các font thuộc họ serif. Chú ý: Đối với các font có khoảng trắng trong tên như Times New Roman cần được đặt trong dấu ngoặc kép. 4.1. Thuộc tính font – style Thuộc tính font-style định nghĩa việc áp dụng các kiểu in thường (normal), in nghiêng (italic) hay xiên (oblique) lên các thành phần trang web. Trong ví dụ bên dưới chúng ta sẽ thử thực hiện áp dụng kiểu in nghiêng cho thành phần h1 và kiểu xiên cho h2. h1{ font –style:italic; } h2 { font –style:oblique; } 4.1. Thuộc tính font – variant Thuộc tính font-variant được dùng để chọn giữa chế độ bình thường và small-caps của một font chữ. Một font small-caps là một font sử dụng chữ in hoa có kích cỡ nhỏ hơn in hoa chuẩn để thay thế những chữ in thường. Nếu như font chữ dùng để hiển thị không có sẵn font small-caps thì trình duyệt sẽ hiện chữ in hoa để thay thế. Trong ví dụ sau chúng ta sẽ sử dụng kiểu small-caps cho phần h1 h1 { font-variant:small-caps } 33
  34. 4.1. Thuộc tính font – weight Thuộc tính font-weight mô tả cách thức thể hiện của font chữ là ở dạng bình thường (normal) hay in đậm (bold). Ngoài ra, một số trình duyệt cũng hỗ trợ mô tả độ in đậm bằng các con số từ 100 – 900. Thử in đậm phần p: p { font-weight:bold } 4.1. Thuộc tính font – size Kích thước của một font được định bởi thuộc tính font-size. Thuộc tính này nhận các giá trị đơn vị đo hỗ trợ bởi CSS bên cạnh các giá trị xx- small, x- small, small, medium, large, x-large, xx-large, smaller, larger. Tùy theo mục đích sử dụng của website bạn có thể lựa chon những đơn vị phù hợp. Ví dụ trang web của bạn phục vụ chủ yếu là những người già, thị lực kém hay những người dùng sử dụng các màn hình máy tính kém chất lượng thì bạn có thể cân nhấc sử dụng các đơn vị qui đổi như em hay %. Như vậy sẽ đảm bảo font chữ trên trang web của bạn luôn ở kích thước phù hợp. Ở ví dụ sau trang web sẽ có kích cỡ font là 20px, h1 là 3em = 3 x 20 = 60px, h2 là 2em = 40px. body{ font-size: 20px; } h1{ font-size: 3em; } h2{ font-size: 2em; } Thuộc tính font rút gọn Tương tự như các thuộc tính background, chúng ta cũng có thể rút gọn các thuộc tính font lại thành một thuộc tính đơn như ví dụ sau: h1{ font-style:italic; font-variant:small-caps; font-weight:bold; font-size: 35px; font-family: arial,verdana,sans-serif; 34
  35. } Thành h1{ font: italic bold 35px arial,verdana,sans-serif; } Cấu trúc rút gọn cho các thuộc tính nhóm font: Font : | | | | 5. Làm việc với các thuộc tính của Text. 5.1. Thuộc tính color Để định màu chữ cho một thành phần nào đó trên trang web chúng ta sử dụng thuộc tính color. Giá trị của thuộc tính này là các giá trị màu CSS hỗ trợ. Ví dụ sau chúng ta sẽ viết CSS để định màu chữ chung cho một trang web là đen, cho tiêu đề h1 màu xanh da trời, cho tiêu đề h2 màu xanh lá chúng ta sẽ làm như sau: body{ color:#000 } h1{ color:#0000FF } h2{ color:#00FF00 } 5.2. Thuộc tính text – indent Thuộc tính text-indent cung cấp khả năng tạo ra khoảng thụt đầu dòng cho dòng đầu tiên trong đoạn văn bản. Giá trị thuộc tính này là các đơn vị đo cơ bản dùng trong CSS. Trong ví dụ sau chúng ta sẽ định dạng thụt đầu dòng một khoảng 30px cho dòng văn bản đầu tiên trong mỗi đoạn văn bản đối với các thành phần p { text-indent:30px } 5.3. Thuộc tính text – align Thuộc tính text-align giúp bạn thêm các canh chỉnh văn bản cho các thành phần trong trang web. 35
  36. Cũng tương tự như các lựa chọn canh chỉnh văn bản trong các trình soạn thảo văn bản thông dụng như MS Word, thuộc tính này có tất cả 4 giá trị : left (canh trái – mặc định), right (canh phải), center (canh giữa) và justify (canh đều). Trong ví dụ sau chúng ta sẽ thực hiện canh phải các thành phần h1, h2 và canh đều đối với thành phần h1, h2 { text-align:right } p { text-align:justify } 5.4. Thuộc tính letter – spacing Thuộc tính letter-spacing được dùng để định khoảng cách giữa các ký tự trong một đoạn văn bản. Muốn định khoảng cách giữa các ký tự trong thành phần h1, h2 là 7px và thành phần là 5px chúng ta sẽ viết CSS sau: h1, h2 { letter-spacing:7px } p { letter-spacing:5px } 5.5. Thuộc tính text – decoration Thuộc tính text-decoration giúp bạn thêm các hiệu ứng gạch chân (underline), gạch xiên (line-through), gạch đầu (overline), và một hiệu ứng đặc biệt là văn bản nhấp nháy (blink). Ví dụ sau chúng ta sẽ định dạng gạch chân cho thành phần h1, gạch đầu thành phần h2 h1{ text-decoration:underline } h2{ text-decoration:overline } 5.6. Thuộc tính text – Transform Text-transform là thuộc tính qui định chế độ in hoa hay in thường của văn bản mà không phụ thuộc vào văn bản gốc trên HTML. Thuộc tính này có tất cả 4 giá trị: uppercase (in hoa), lowercase (in 36
  37. thường), capitalize (in hoa ở ký tự đầu tiên trong mỗi từ) và none (không áp dụng hiệu ứng – mặc định). Trong ví dụ dưới đây chúng ta sẽ định dạng cho thành phần h1 là in hoa, h2 là in hoa đầu mỗi ký tự. h1{ text-transform:uppercase } h2{ text-transform:capitalize } 6. Peseudo – classes for Link. Một thành phần rất quan trọng trong mọi website chính là liên kết.Cũng như một đối tượng văn bản thông thường, chúng ta hoàn toàn có thể áp dụng các thuộc tính định dạng đã học ở 2 bài trước như định font chữ, gạch chân, màu chữ, cho một liên kết. Hơn nữa, CSS còn cung cấp một điều khiển đặc biệt được gọi là pseudo- classes. Pseudo-classes cho phép bạn xác định các hiệu ứng định dạng cho một đối tượng liên kết ở một trạng thái xác định như khi liên kết chưa được thăm (a:link), khi rê chuột lên liên kết (a:hover), khi liên kết được thăm (a:visited) hay khi liên kết đang được kích hoạt – đang giữ nhấn chuột (a:active). Với điều khiển pseudo- classes cùng với các thuộc tính CSS đã học chắc chắn sẽ mang lại rất nhiều ý tưởng về trang trí liên kết cho trang web. Sau đây chúng ta sẽ tiến hành một số ví dụ để tìm hiểu thêm về các khả năng trang trí cho một liên kết dựa trên pseudo-classes. Ví dụ 1: Ví dụ này chúng ta sẽ áp dụng 4 màu sắc khác nhau cho từng trạng thái liên kết: các liên kết chưa thăm có màu xanh lá; các liên kết mouse over sẽ có màu đỏ tươi; các liên kết đã thăm sẽ có màu đỏ và các liên kết đang kích hoạt có màu tím. a:link{ color:#00FF00 } a:hover{ color:#FF00FF } a:vistited{ color:#FF0000 } a:active{color:#662D91} 37
  38. Ví dụ 2: Tạo các hiệu ứng tương ứng với trình trạng liên kết: các liên chưa thăm có màu xanh lá, kích cỡ font 14px; liên kết mouse over có màu đỏ tươi, kích cỡ font 1.2em, hiệu ứng nhấp nháy; liên kết đã thăm sẽ có màu xanh da trời, không có đường gạch chân; các liên kết đang kích hoạt có màu tím và font dạng small-caps. a:link { color:#00FF00; font-size:14px } a:hover{ color:#FF00FF; font-size:1.2em; text-decoration:blink } a:vistited{ color:#FF0000; text-decoration:none } a:active{ color:# 662D91; font-variant:small-caps } Ví dụ 3: Ví dụ này cũng tạo cho liên kết hiệu ứng màu sắc giống ví dụ 2 nhưng sẽ có thêm 1 số hiệu ứng: các liến kết sẽ có khung viền màu đen, kích cỡ font 14px; liên kết mouse over có nền light cyan; các liên kết đã thăm có nền light yellow. a { border:1px solid #000; font-size:14px } a:link{ color:#00FF00; } a:hover{ background-color:#00BFF3; color:#FF00FF; font-size:1.2em; text-decoration:blink } a:vistited{ 38
  39. background-color:#FFF568; color:#FF0000; text-decoration:none } a:active{ color:#662D91; font-variant:small-caps } Ba ví dụ trên chỉ là một tí gợi ý về khả năng kết hợp các thuộc tính CSS với pseudo-classes để tạo nên nhiều hiệu ứng hấp dẫn cho trang web. Cũng xin nói luôn là các ví dụ Pearl trình bày trong bài này cũng như những bài khác thật ra trông không dễ nhìn, đó là do Pearl không có nhiều thời gian để chăm chút các ví dụ của mình. Cái mà Pearl muốn nói chỉ là làm thế nào các bạn hiểu tác dụng một thuộc tính nào đó để có thể vận dụng cho trang web của chính mình. 7. Class – Id 7.1. Nhóm phần tử Class. Ví dụ chúng ta có một đoạn mã HTML sau đây : Danh Sách Các Tỉnh, Thành Phố Của Việt Nam Hà Nội TP. Hồ Chí Minh Đà Nẵng Thừa Thiên Huế Khánh Hòa Quãng Ninh Tiền Giang Yêu cầu đặt ra là làm thế nào để tên các thành phố là màu đỏ và tên các tỉnh là màu xanh da trời. Để giải quyết vấn đề này chúng ta sẽ dùng một thuộc tính HTML gọi là class để tạo thành 2 nhóm là thành phố và tính. Ta sẽ viết lại đoạn HTML sau thành như thế này: Danh Sách Các Tỉnh, Thành Phố Của Việt Nam Hà Nội TP. Hồ Chí Minh Đà Nẵng Thừa Thiên Huế Khánh Hòa Quãng Ninh Tiền Giang Với việc dùng class để nhóm các đối tượng như trên thì công việc của chúng ta sẽ trở nên đơn giản hơn nhiều: 39
  40. li .tp { color:FF0000 } li.tinh{ color:0000FF } Lưu ý: Không nên đặt tên class với ký tự đầu là chữ số, nó sẽ không làm việc cho Firefox. 7.2. Nhận dạng phần tử với Id. Ví dụ: Cũng với đoạn HTML như ví dụ về class. Nhưng yêu cầu đặt ra là Hà Nội sẽ có màu đỏ sậm, TP. Hồ Chí Minh màu đỏ, Đà Nẵng màu đỏ tươi còn các tỉnh màu xanh da trời. Để giải quyết vấn đề này chúng ta sẽ sử dụng thuộc tính HTML là id để nhận dạng mỗi thành phố và dùng class để nhóm các tỉnh. Đoạn HTML của chúng ta bây giờ sẽ là : Danh Sách Các Tỉnh, Thành Phố Của Việt Nam Hà Nội TP. Hồ Chí Minh Đà Nẵng Thừa Thiên Huế Khánh Hòa Quãng Ninh Tiền Giang Và đoạn CSS cần dùng sẽ là : #hanoi { color:# 790000 } #hcmc { color:#FF0000 } #danang { color:#FF00FF } .tinh { color:#0000FF } Lưu ý: Không nên đặt tên id với ký tự đầu là chữ số, nó sẽ không làm việc cho Firefox. Trải qua hai ví dụ trên chúng ta có thể rút ra những kết luận sau: - Class dùng để nhóm các đối tượng có cùng thuộc tính, do tính chất đó nó có thể được sử dụng nhiều lần. - Id dùng để nhận dạng một đối tượng đặc trưng, id có tính duy nhất. Trong bài học này, chúng ta đã được học về các sử dụng class và id để áp dụng các đặc tính đặc biệt cho một thành phần web. Ở bài kế tiếp chúng ta sẽ được học thêm về hai thẻ và trong HTML và ý nghĩa 2 thẻ này đối với việc viết CSS. 40
  41. 8. Span – Div. 8.1. Nhóm phần tử với Thẻ trong HTML thật ra là một thẻ trung hòa, nó không thêm hay bớt bất cứ một thứ gì vào một tài liệu HTML cả. Nhưng chính nhờ tính chất trung hòa này mà nó lại là một công cụ đánh dấu tuyệt vời để qua đó chúng ta có thể viết CSS định dạng cho các phần tử mong muốn. Ví dụ: Chúng ta có đoạn HTML sau trích dẫn câu nói của chủ tịch Hồ Chí Minh Không có gì quý hơn độc lập, tự do. Yêu cầu ở đây là chúng ta hãy dùng CSS tô đậm 2 từ độc lập, tự do. Để giải quyết vấn đề này, chúng ta sẽ thêm thẻ vào đoạn HTML như sau: Không có gì quý hơn độc lập , tự do . Và bây giờ chúng ta có thể viết CSS cho yêu cầu trên: .nhanmanh { font-weight:bold } 8.2. Nhóm phần tử với Cũng như , cũng là một thẻ trung hòa và được thêm vào tài liệu HTML với mục đính nhóm các phần tử lại cho mục đích định dạng bằng CSS. Tuy nhiên, điểm khác biệt là dùng để nhóm một khối phần tử trong khi đó có thể nhóm một hoặc nhiều khối phần tử. Trở lại ví dụ về danh sách tỉnh, thành trong phần class bài trước chúng ta sẽ giải quyết vấn đề bằng cách nhóm các phần tử với như sau: Danh Sách Các Tỉnh, Thành Phố Việt Nam: Hà Nội TP. Hồ Chí Minh Đà Nẵng Thừa Thiên Huế Khánh Hòa Quãng Ninh Tiền Giang Và đoạn CSS cho mục đích này sẽ là: #tp { color:#FF0000 } 41
  42. #tinh{ color:0000FF } 9. Margin & padding. Trong CSS, box model (mô hình hộp) mô tả cách mà CSS định dạng khối không gian bao quanh một thành phần. Nó bao gồm padding (vùng đệm), border (viền) và margin (canh lề) và các tùy chọn. Hình bên dưới mô tả cấu trúc minh họa mô hình hộp cho một thành phần web. Mô hình trên là một mô hình lý thuyết lý tưởng. Dưới đây ta sẽ xét mô hình của một đối tượng web cụ thể: Ví dụ: Có đoạn mã HTML sau: p { width:200px; margin:30px 20px; padding:20px 10px; border:1px solid #000; text-align:justify } Với ví dụ trên ta sẽ khái quát được mô hình hộp như sau: 42
  43. 9.1. Thuộc tính Margin. Như tất cả những ai đã học qua MS Word đều biết là trong phần thiết lập Page Setup của Word cũng có một thiết lập margin để định lề cho trang in. Tương tự, thuộc tính margin trong CSS cũng được dùng để canh lề cho cả trang web hay một thành phần web này với các thành phần web khác hay với viền trang. Ví dụ sau sẽ chỉ cho chúng ta biết cách canh lề cho một trang web. body { margin-top:80px; margin-bottom:40px; margin-left:50px; margin-right:30px; border:1px dotted #FF0000 } Hoặc gọn hơn chúng ta sẽ viết như sau: body { margin:80px 30px 40px 50px; border:1px dotted #FF0000 } Cú pháp như sau: margin: | | | Hoặc: margin: | – với value 1 là giá trị margin-top và margin- bottom và value2 là giá trị margin-left và margin-right. Kết quả của ví dụ trên sẽ được cụ thể hóa mô hình như sau: 43
  44. Ví dụ kế tiếp sẽ thể hiện rõ hơn về việc dùng margin để canh lề cho các đối tượng trong trang web. Các bạn hãy quan sát các đường viền và nhận xét. body{ margin:80px 30px 40px 50px; border:1px solid #FF0000 } #box1{ margin:50px 30px 20px 40px; border:1px solid #00FF00 } #box2{ margin:50px 30px 20px 40px; border:1px solid #0000FF } 9.2. Thuộc tính Padding. Padding có thể hiểu như là một thuộc tính đệm. Padding không ảnh hưởng tới khoảng các giữa các các đối tượng như margin mà nó chỉ quy định khoảng cách giữa phần nội dung và viền của một đối tượng (xem lại ảnh minh họa về boxmodel). Cú pháp: Tương tự margin. Padding: | | | Các bạn hãy thử thực hiện lại 2 ví dụ ở phần margin, nhưng thay margin bằng padding, nhớ quan sát vị trí đường viền. 10. Border. Border là một thành phần quan trọng trong một trang web. Nó thường được dùng trong trang trí, đóng khung cho một đối tượng cần nhấn mạnh, phân cách các đối tượng giúp trang web trông dễ nhìn hơn, Trong bài học này, 44
  45. chúng ta sẽ cùng tìm hiểu về cách dùng CSS để định border cho các đối tượng web. 10.1. Thuộc tính border-width Border-width là một thuộc tính CSS quy định độ rộng cho viền của một đối tượng web. Thuộc tính này có các giá trị: thin (mảnh), medium (vừa), thick (dày), hay là một giá trị đo cụ thể như pixels. Xem hình minh họa bên dưới. 10.2. Thuộc tính border-color Border-color là thuộc tính CSS quy định màu viền cho một đối tượng web. Thuộc tính này nhận tất cả đơn vị màu CSS hỗ trợ. 10.3. Thuộc tính border-style Border-style là thuộc tính CSS quy định kiểu viền thể hiện của một đối tượng web. CSS cung cấp tất cả 8 kiểu viền tương ứng với 8 giá trị: dotted, dashed, solid, double, groove, ridge, inset và outset. Ngoài ra, hai giá trị none hay hidden dùng để ẩn đường viền. Để hiểu rõ hơn, chúng ta hãy xem hình minh họa dưới đây (tất cả viền có màu vàng). Ví dụ: Ví dụ sau sẽ định viền cho 3 thành phần h1, h2, p như sau: h1 { border-width:thin; border-color:#FF0000; border-style:solid } h2 { border-width:thick; border-color:#CCC; border-style:dotted } p { border-width:5px; border-color:#FF00FF; border-style:double } Ngoài ra, chúng ta cũng có thể dùng riêng các thuộc tính border-top, border-right, border-bottom hay border-left để chỉ định viền riêng cho các đối tượng. Ví dụ: h1{ border-top-width:thin; border-top-color:#FF0000; border-top-style:solid; border-right-width:thick; border-right-color:#AFAFAF; border-right-style:dotted; border-bottom-width:2px; 45
  46. border-bottom-color:blue; border-bottom-style:double; border-left-width:5px; border-left-color:violet; border-left-style:groove } Thuộc tính border rút gọn: Để dễ nhớ chúng ta có thể sử dụng cấu trúc rút gọn của CSS như sau: Border: | | 11. Height & width. 11.1. Thuộc tính width. Width là một thuộc tính CSS dùng để quy định chiều rộng cho một thành phần web. Ví dụ sau chúng ta sẽ định chiều rộng cho thành phần p của một trang web. p { width:700px; } 11.2. Thuộc tính max-width Max-width là thuộc tính CSS dùng để quy định chiều rộng tối đa cho một thành phần web. 11.3. Thuộc tính min-width Min-width là thuộc tính CSS dùng để quy định chiều rộng tối thiểu cho một thành phần web. 11.4. Thuộc tính height Height là một thuộc tính CSS dùng để quy định chiều cao cho một thành phần web. Ví dụ sau chúng ta sẽ định chiều cao cho thành phần p của một trang web. p { height:300px } 46
  47. 11.5. Thuộc tính max-height Max-height là thuộc tính CSS dùng để quy định chiều cao tối đa cho một thành phần web. 11.6. Thuộc tính min-height Min-height là thuộc tính CSS dùng để quy định chiều cao tối thiểu cho một thành phần web. Lưu ý: Thông thường chiều cao một thành phần web do văn bản trong trang web đó quyết định. Việc định chiều cao chính xác cho một thành phần sẽ tạo thanh cuộn văn bản nếu chiều cao văn bản lớn hơn chiều cao đã định. Các thuộc tính max/min-width/height được sử dụng trong những trường hợp bạn không chắc giá trị chính xác cho width, height cả một thành phần. Ví dụ, bạn vùng chứa bài post của một forum có bề ngang 500px, bạn có thể định max-width:500px cho phần hình ảnh trong phần đó để tránh những ảnh lớn bị lệch ra ngoài. 47
  48. HƯỚNG DẪN THỰC HIỆN MÔ ĐUN 1. Phạm vi áp dụng chương trình: - Chương trình mô đun được sử dụng để giảng dạy cho trình cao đẳng nghề 2. Hướng dẫn một số điểm chính về phương pháp giảng dạy môn học: - Giới thiệu về ngôn ngữ HTML - Thiết kế một Website tĩnh. - Xây dựng được giao diện Website với CSS - Sinh viên trao đổi với nhau, thực hiện các bài thực hành và trình bày theo nhóm - Thực hiện các bài tập thực hành được giao. 3. Những trọng tâm chương trình cần chú ý: - Giáo viên trước khi giảng dạy cần phải căn cứ vào nội dung của từng bài học chuẩn bị đầy đủ các điều kiện thực hiện bài học để đảm bảo chất lượng giảng dạy. TÀI LIỆU THAM KHẢO [1] Bùi Huy Quỳnh, Giáo trình thiết kế web, Đại học sư phạm Kỹ Thuật TPHCM, 2004. [2] Đinh Văn Bình , Ngắn gọn về Microsoft Frontpage 2000, Nhà xuất bản khoa học kỹ thuật 2001. [3] Dương Quang Thiện , Thiết kế web với Frontpage 2000, Nhà xuất bản thống kê, 2001. [4] Lữ Đức Hào, Tự học Frontpage 2002 trong 24giờ, Nhà xuất bản thống kê, 2002. 48