Giáo trình CSS Advanced - Chương 4 - Phạm Đào Minh Vũ
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình CSS Advanced - Chương 4 - Phạm Đào Minh Vũ", để 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:
- giao_trinh_css_advanced_chuong_4_pham_dao_minh_vu.pdf
Nội dung text: Giáo trình CSS Advanced - Chương 4 - Phạm Đào Minh Vũ
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- Giới thiệu CSS CSS là gì? – CSS : viết tắt của Cascading Style Sheet – CSS là tập hợp các định dạng để hiển thị & trang trí trang HTML – CSS được lưu dưới dạng file text có đuôi .css Lợi ích của CSS ? – Tách phần định dạng ra khỏi HTML ( Loại bỏ thẻ , , , ) – Tăng tốc việc phát triển web. Việc lập trình nội dung trang web và việc layout giao diện có thể được làm song song – Tiêu tốn ít không gian lưu trữ. Có hiệu quả đồng bộ. – Được hỗ trợ bởi tất cả các trình duyệt – Thay đổi giao diện dễ dàng, chỉ cần thay đổi file CSS mới
- CSS syntax CSS bao gồm các luật định dạng Mỗi luật bao gồm 2 phần : – Selector : xác định các thẻ HTML sẽ được định dạng – Declaration gồm 1 property và 1 value. Property là thuộc tính định dạng mà ta cần thay đổi, value là giá trị của của thuộc tính đó Trong ví dụ trên ta định dạng tất cả thẻ sẽ có color = blue và font-size = 12 px
- CSS example
- CSS comment Giống C++, ta sử dụng // và /* */ để comment các ghi chú và các luật không xài. Lưu ý : – Các declaration trong 1 luật CSS phải được bao lại bởi { và } – Mỗi declaration nên để 1 dòng để dễ đọc và dễ bảo trì
- CSS id & class Để xác định các thẻ cần định dạng, CSS có 3 cách : – Sử dụng tên thẻ – Sử dụng id và class – Hỗn hợp
- Tag selector Ta có thể định dạng CSS cho nhiều thẻ bằng cách dùng tên thẻ : p //Tất cả thẻ p { background-color : #FFFFFF; } p h1 // Tất cả thẻ h1 nằm trong thẻ p { color : red; font-weight:bold; }
- Id selector Id selector dùng để áp dụng định dạng CSS cho 1 thành phần HTML duy nhất Id selector = “#” + giá trị thuộc tính id của thành phần HTML Ví dụ luật dưới đây áp dụng cho các thành phần có id = “para1”
- Class selector Class selector dùng để định dạng 1 nhóm các HTML element thuộc cùng 1 lớp (class) Class selector = “.” + giá trị thuộc tính class trong thành phần HTML Ví dụ
- Sử dụng CSS Có 3 cách chèn CSS vào HTML : – Dùng file CSS riêng – Chèn CSS vào thẻ – Chèn CSS dạng inline vào các thẻ HTML
- Dùng file CSS riêng Thích hợp cho việc định dạng nhiều trang cùng 1 lúc Các trang HTML phải liên kết đến file CSS bằng thẻ Việc lưu file CSS riêng sẽ giúp ta dễ dàng đổi giao diện trang web bằng cách thay file CSS File CSS lúc này chỉ bao gồm toàn các luật CSS :
- Dùng file CSS riêng
- Chèn CSS vào thẻ Thay vì để CSS riêng ra 1 file, ta có thể nhúng vào trang HTML ở trong phần Các luật CSS phải nằm trong thẻ
- Chèn CSS dạng inline Các định dạng CSS sẽ được chèn trực tiếp vào thuộc tính style của các thẻ HTML. Lúc này ta không cần đến selector Sử dụng dạng inline sẽ xóa bỏ ưu điểm tách biệt nội dung và giao diện của CSS
- Lưu ý Nếu trang HTML sử dụng tất cả các kiểu chèn CSS trên thì thứ tự định dạng sẽ là : 1. Các định dạng inline 2. Các định dạng trong thẻ 3. Các định dạng từ file CSS 4. Các định dạng mặc định của trình duyệt
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- Background Các thuộc tính background dùng để xác định hiệu ứng màu nền + hình nền cho các thành phần HTML Thuộc tính này bao gồm : – background-color : màu nền – background-image : hình nền – background-repeat : cách lặp lại hình nền – background-position : vị trí của hình nền
- Background color Thuộc tính background-color giúp ta đặt màu nền cho thành phần HTML Cú pháp : background-color=# ; Ví dụ :
- Background image Thuộc tính background-image dùng để đặt hình nền cho thành phần HTML Mặc định hình nền sẽ tô đầy kích thước của thành phần HTML Cú pháp : background-image : url( );
- Background repeat Mặc định background-image sẽ lặp lại hình nền cho cả 2 chiều dọc và ngang Một số hình chỉ cần repeat ngang hoặc dọc nếu không sẽ rất xấu. Thuộc tính background-repeat qui định việc lặp lại này Cú pháp background-repeat : ; Giá trị repeat gồm : • repeat-x • repeat-y • repeat • no-repeat
- Background position Thuộc tính background-postion chỉ hiện hình nền tại 1 vị trí nhất định (đi kèm với background-repeat: no-repeat;) Cú pháp : background-position : ; center top left top right top center center left center right center center botttom left bottom right bottom
- Background short hand Để làm ngắn code CSS, ta có thể gom tất cả các thuộc tính (background-color, background-image, background- repeat,background-position) vào thuộc tính background : background:#ffffff url('img_tree.png') no-repeat right top;
- Fixed background Thuộc tính background-attachment : fixed dùng để cố định vị trí của hình nền. Ví dụ ta muốn có 1 hình nền ở góc trên bên trái trang web. Hình nền sẽ luôn luôn ở vị trí góc trên bên trái dù người dùng có cuộn trang web.
- Property Description Values CSS background-color , background- image , background Đặt màu nền hình nền background-repeat , background- 1 attachment , background-position, inherit background- Đặt vị trí cố định cho hình scroll , fixed ,inherit 1 attachment nền background- color-rgb , color-hex , color-name Đặt màu nền 1 color transparent , inherit url(URL) background- Đặt hình nền none 1 image inherit left top , left center , left bottom , right top , right center , right background- Đặt vị trí cho hình nền bottom , center top ,center center , 1 position center bottom , x% y% , xpos ypos , inherit background- repeat , repeat-x , repeat-y , no- Qui định cách lặp lại hình 1 repeat repeat , inherit
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- Text color Thuộc tính color dùng để đặt màu chữ cho văn bản Cú pháp : color : ; // Ví dụ red hoặc color : ; // Ví dụ #FFEECC hoặc color : ; // Ví dụ RGB(255,0,0)
- Text alignment Thuộc tính text-align qui định cách canh lề cho văn bản Cú pháp : text-align : Cách canh lề : – left : canh lề trái – right : canh lề phải – center : canh giữa – justify : canh đều 2 bên
- Text decoration Thuộc tính text-decoration dùng để đặt hoặc xóa các trang trí cho văn bản Cú pháp text-decoration : ; Cách trang trí : – overline : đường gạch ngang phía trên văn bản – underline : đường gạch dưới – line-through : đường gạch giữa văn bản – blink : nhấp nháy – none : không trang trí
- Text Transform Thuộc tính text-transform dùng để chuyển chữ hoa ,thường cho văn bản Cú pháp text-transform : Kiểu chữ : – lowercase : Chuyển tất cả kí tự sang chữ thường – uppercase : Chuyển tất cả kí tự sang chữ hoa – capitalize : Ghi hoa các kí tự đầu của chữ
- Các thuộc tính khác text-indent: qui định cách lề cho dòng đầu tiên (bằng pixel). letter-spacing : khoảng cách giữa các kí tự word-spacing : khoảng cách giữa các từ line-height: chiều cao của 1 dòng (pixel hoặc %) direction : hướng viết văn bản (rtl : phải qua trái) white-space : nowrap ; // Không wrap văn bản vertical-align: đặt canh lề dọc (baseline, sub, super, top, text-top, middle, bottom, text- bottom).
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- CSS Font Các thuộc tính CSS font cho phép thay đổi font, kích thước font, kiểu font, độ đậm của font. Trong CSS có 2 loại loại font : – Loại tổng quát : serif , sans-serif, monospace – Loại cụ thể : 1 font cụ thể Loại tổng quát Font cụ thể Times New Roman Serif Georgia Arial Sans-serif Verdana Courier New Monospace Lucida Console
- Font Family Thuộc tính font-family qui định loại font cho văn bản Nên sử dụng nhiều font, để nếu không có font này, trình duyệt sẽ dùng font khác Cú pháp :
- Font style & font weight Thuộc tính font-style dùng để in nghiêng văn bản Giá trị : – normal : bình thường – italic : in nghiêng Thuộc tính font-weight dùng để in đậm văn bản Giá trị – normal – bold – bolder – lighter – 100, 200, 300, 900
- Font size Thuộc tính font-size qui định kích thước văn bản Có 2 loại kích thước : – Tuyệt đối : là giá trị tính bằng pixel – Tương đối là giá trị tính bằng “em” ( 1 em = kích thước font mặc định của trình duyệt. Mặc định = 16px)
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- Link Liên kết có thể được trang trí bởi các thuộc tính : color, background-color, background- image,font Một liên kết có 4 trạng thái sau : a:link – 1 liên kết bình thường, chưa được truy cập a:visited – 1liên kết đã được người dùng truy cập a:hovered – 1 liên kết khi chuột đang ở trên nó a:active – 1 liên kết đang được nhấn
- Ví dụ 1
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- List Với danh sách, ta có thể dùng CSS để thay đổi : – Bullet trong danh sách không thứ tự hoặc cách đánh số trong danh sách có thứ tự (list-style-type) – Thay thế bullet bằng hình ảnh (list-style-image) Giá trị thuộc tính : – list-style-type : • none, disc, circle, square • decimal, lower-roman, upper-alpha, upper- roman – list-style-image : url (image_path)
- Ví dụ 1
- Ví dụ 2
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- CSS Table Sử dụng CSS ta có thể trang trí bảng rất đẹp. Ví dụ như :
- CSS Table border-collapse : – collapse: boder các ô sẽ dính sát nhau. – separate : boder các ô sẽ được tách ra. border : thuộc tính border qui định kiểu, độ dày và màu sắc đường viền width, height: qui định chiều dài, chiều cao của bảng, ô hoặc dòng text-align (left, right, justify) : canh lề văn bản vertical-align(bottom, middle, top) : canh lề dọc padding : kích thước đệm mỗi ô
- Table Demo dùng CSS để tạo bảng giống hình bên dưới Gợi ý (tô màu dòng chẳn dòng lẻ): table.ex1 tr:nth-child(odd) {color: #000; background: #FFF} table.ex1 tr:nth-child(even) {color: #000; background: #CCC}
- Nội dung Giới thiệu CSS CSS Background CSS Text CSS Font CSS Link CSS List CSS Table CSS Box Model
- Box model Mô tả cách CSS định dạng khối không gian bao xung quanh 1 element. Mỗi HTML element khi hiển thị trên trình duyệt sẽ là 1 cái hộp như sau :
- CSS Box model part margin: là khoảng trắng nằm phía ngoài border, margin sẽ không có màu nền. Luôn luôn vô hình border : là đường biên bao quanh padding và content. Một border bao gồm kiểu, độ dày, và màu padding : là khoảng đệm giữa border và content content : là nơi mà văn bản, hình ảnh nội dung của HTML element xuất hiện
- Width, height of an element Khi chúng ta đặt thuộc tính width, height cho 1 HTML element trong CSS, thực chất ta chỉ đặt width và height cho content của nó mà thôi Muốn có width , height thật của box, ta phải cộng thêm margin, border, padding Total element width = width + left padding + right padding + left border + right border + left margin + right margin Total element height = height + top padding + bottom padding + top border + bottom border + top margin + bottom margin
- CSS border (1) border-style : qui định kiểu border :
- CSS border (2) border-width : qui định chiều dày của border
- CSS border(3) border-color : qui định màu cho border
- CSS border (4) Tiếp đầu ngữ : border-left , border-top, border- right, border-bottom dùng kèm với width, color, style để qui định độ dày, màu sẵc, kiểu của border trái, trên, phải, dưới.
- CSS border (5) Ghi tắt – border : solid 1px red; – border : dotted 5px #FFEE00;
- CSS margin margin-left , margin-top,margin-right, margin-bottom : dùng để qui định margin của bên trái, trên, phải và dưới Giá trị của margin : – auto : trình duyệt tự động quyết định – px, em : độ dài bằng pixel hay em – % độ dài bằng phần trăm
- CSS margin(2)
- CSS margin(3) – Viết tắt margin:25px 50px 75px 100px; – top margin is 25px – right margin is 50px – bottom margin is 75px – left margin is 100px margin:25px 50px 75px; – top margin is 25px – right and left margins are 50px – bottom margin is 75px – margin:25px 50px; – top and bottom margins are 25px – right and left margins are 50px – margin:25px; – all four margins are 25px
- CSS padding padding-left , padding-top, padding-right, padding-bottom : dùng để qui định padding của bên trái, trên, phải và dưới Giá trị của padding: – px, em : độ dài bằng pixel hay em – % độ dài bằng phần trăm
- CSS padding (2)
- CSS padding (3) padding:25px 50px 75px 100px; – top padding is 25px – right padding is 50px – bottom padding is 75px – left padding is 100px padding:25px 50px 75px; – top padding is 25px – right and left paddings are 50px – bottom padding is 75px padding:25px 50px; – top aand bottom paddings are 25px – right and left paddings are 50px padding:25px; – all four paddings are 25px