Hôm trước mình đã lấy ý kiến mọi người về vấn đề lập dự án lớp học css và cũng được sự ủng hộ nhiệt tình của mọi người nên hôm nay quyết định bắt tay vào thực hiện chuyên mục này luôn. Hôm nay mình sẽ nói về một số thuộc tính căn bản của css để phục vụ cho quá trình thiết kế.

học css

Cách tạo class, Id và cách gọi ra một module. 

Class có dạng:

.Ten-Class{

thuộc tính 1;

thuộc tính 2;

…;

}

Id có dạng:

#Ten-Id{

thuộc tính 1;

thuộc tính 2;

…;

Chú ý: class và ID thường được đặt trước thẻ ]]></b:skin>

Còn phần gọi ra module được đặt bên trong thẻ <body> và </body>

Cách gọi ra một module

<div class=’Ten-Class’> Nội dung bên trong module </div> 

Hoặc

<div id=’Ten-Id’> Nội dung bên trong module </div> 

Có thể thay thẻ div bằng thẻ span.

Class là module có thể sử dụng nhiều lần.

Id là module chỉ dùng 1 lần duy nhất.

Bên dưới là các thuộc tính bạn có thể gắng vào class hoặc id.

1. Background (nền module) 

Background quy định màu nền hoặc hình nền của module.

Màu nền:

Dạng thuộc tính: background: #fff;

#fff: là màu nền của module.

Đây là kết quả của thuộc tính trên.

Màu nền cho module là màu trắng

Hình nền

Dạng thuộc tính: background: url(Link Ảnh);

Link ảnh: là liên kết đến ảnh nền của module

Đây là kết quả của thuộc tính trên với link ảnh này

Sử dụng hình nền cho module

2. Border (Đường viền cho một module) 

Border quy định thuộc tính về đường viền của một module.

Border có dạng như sau: border: 2px dash #aaa;

Ý nghĩa các giá trị:

» 2px: độ dày của đường viền

» dash: kiểu đường viền. Bao gồm các dạng sau.

  » dotted

Nội dung

  » dashed

Nội dung

  » solid

Nội dung

  » double

Nội dung

  » groove

Nội dung

  » ridge

Nội dung

  » inset

Nội dung

  » outset

Nội dung

» #aaa: màu đường viền

3. Border-radius (bo góc module) 

Thuộc tính border-radius có tác dụng bo góc cho một module.

Dạng thuộc tính: border-radius: 10px 10px 10px 10px;

Ý nghĩa từng thông số:

 » 10px: là góc trên bên trái.

 » 10px: là góc trên bên phải

 » 10px: là góc dưới bên phải

 » 10px: là góc dưới bên trái

Đây là kết quả đoạn code trên:

Code bo góc cho module

Bạn có thể thay giá trị tuyệt đối (dạng px) thành giá trị tương đối (%)

Ví dụ: border-radius: 50% 50% 50% 50%;

Và đây là kết quả:

Code bo góc cho module

4. Box-shadow (Bóng đổ cho module) 

Box-shadow là thuộc tính về bóng đổ cho module.

Dạng thuộc tính: box-shadow:2px 2px 2px 3px #333 inset;

Ý nghĩa thuộc tính: (lần lượt từ trái qua phải)

 » 2px: là bóng đổ về phía phải (giá trị âm sẽ đổ về phía trái)

 » 2px: là bóng đổ về phía dưới (giá trị âm sẽ đổ về phía trên)

 » 2px: là độ nhòe của bóng.

 » 3px: là độ lan tỏa của bóng.

 » #333: là màu của bóng đổ.

 » inset: là bóng đổ chìm vào trong (nếu muốn làm khối nổi thì bỏ cái này)

Và đây là kết quả của đoạn code trên khi có inset.

Đổ bóng cho module

Kết quả của đoạn code trên khi không có inset.

Đổ bóng cho module

5. Clear (Dừng float module) 

Thông thường khi có 1 module (ví dụ là module A) sử dụng thuộc tính float thì những module tiếp theo nó sẽ có xu hướng chiếm phần không gian mà module A không sử dụng. Để ngăn không cho các module còn lại chiếm không gian mà module A không sử dụng người ta thường dùng thuộc tính clear để giải quyết vấn đề này.

Dạng thuộc tính:

Clear: left; (không cho chiếm không gian bên trái của module A)

Clear: right; (không cho chiếm không gian bên phải của module A)

Clear: both; (không cho chiếm không gian cả 2 bên của module A)

Thông thường người ta ít dùng thuộc tính này vào css mà thường dùng đoạn code <div style=’clear:both’/> bên dưới module để dừng việc float module.

6. Color (Màu chữ) 

Color qui định màu chữ trong module bao gồm màu chữ, màu liên kết, màu liên kết khi rê chuột vào…

Dạng thuộc tính: color: #cc0000;

Với #cc0000 là màu chữ.

Ví dụ mình có đoạn css sau:

.module{ color:#779933 }  /* Màu chữ trong module */

.module a{ color:#991177 }  /* Màu liên kết trong module */

.module a:hover{ color:#aa8822 }  /* Màu liên kết khi rê chuột vào. */

Đây là kết quả khi gọi module trên ra.

Blogger: Võ Quốc An

Homepage: http://www.voquocan.com

7. Display (Sắp xếp hoặc ẩn module) 

Display quy định về cách sắp xếp module hoặc ẩn module.

Display có một trong những dạng sau:

display: inline; (module sắp xếp cùng 1 hàng)

Module 1 Module 2 Module 3

display: block; (module sắp xếp thành nhiều block chồng lên nhau)

Module 1

Module 2

Module 3

display: none; (module sẽ bị ẩn khi dùng thuộc tính này)

8. Float (Sắp xếp vị trí module) 

Float quy định về cách sắp xếp vị trí module. (trái, phải.)

Bình thường khi gắng 1 module thì mặc định module mới đó sẽ chiếm 100% chiều ngang. Tất cả các module khác sẽ bị đẩy xuống dưới. Xem ví dụ bên dưới.

ảnh võ quốc an blog

Mặc dù module ảnh có chiều ngang là 160px nhưng nó vẫn chiếm 100% chiều ngang và đẩy module text xuống dưới. Gây lãng phí không gian.

Blogger: Võ Quốc An

Homepage: http://www.voquocan.com

Dạng thuộc tính:

float:left; (module nằm bên trái). float:right; làm tương tự nhưng thay left thành right.

Trong trường hợp này module ảnh đã được đẩy qua trái (float:left). Module text sẽ được đưa lên trên như thế này.

Blogger: Võ Quốc An

Homepage: http://www.voquocan.com

Chú ý:

1. Không có tình trạng float ảnh vào giữa (center). Để đẩy ảnh vào giữa bạn cần kết hợp 2 lần float trái cho 2 module. Quy định chiều rộng cho module thứ nhất để xác định được vị trí module thứ 2. Xem ví dụ bên dưới.

Đây là module 1 đã float:left với chiều rộng 150px.

Blogger: Võ Quốc An

Homepage: http://www.voquocan.com

2. Thuộc tính float thường đi chung với thuộc tính clear để gỡ bỏ thuộc tính float của module

9. Font (Kiểu chữ trong module) 

Font quy định về những thuộc tính liên quan đến chữ như kiểu chữ, cỡ chữ, in đậm, in nghiêng…

Dạng thuộc tính:

Sử dụng kết hợp font: italic bold 30px Georgia;

Ý nghĩa từng thuộc tính:

italic: Chữ in nghiêng (có thể bỏ)

bold: chữ in đậm (có thể bỏ)

30px: cỡ chữ

georgia: kiểu chữ

Sử dụng đơn lẻ từng thuộc tính:

font-family: arial; (quy định kiểu chữ)

font-size: 30px; (quy định cỡ chữ)

font-style: italic; (in nghiêng)

font-weight:bold; (in đậm)

Chú ý: Chữ có gạch chân không sử dụng thuộc tính này mà dùng text-decoration:underline;

10. Height – Width (Chiều cao – rộng module) 

Thuộc tính height (width) quy định về chiều cao (rộng) của module.

Height: chiều cao

Dạng thuộc tính: height:150px;

Ý nghĩ thuộc tính:

150px là chiều cao của module.

Bạn có thể thay địa chỉ tuyệt đối (dạng px) thành địa chỉ tương đối (dạng %)

Ví dụ: height:30%;

Width: chiều rộng

Dạng thuộc tính: width:50%;

Ý nghĩ thuộc tính:

50% là chiều rộng của module.

Bạn có thể thay địa chỉ tương đối (dạng %) thành địa chỉ tuyệt đối (dạng px)

Ví dụ: width:300px;

11. Line-height (Chiều cao dòng chữ) 

Thuộc tính line-height quy định về chiều cao dòng chữ.

Dạng thuộc tính:

line-height:2;

line-height:2;

line-height:2;

line-height:4;

line-height:4;

line-height:4;

line-height:25px;

line-height:25px;

line-height:25px;

line-height:200%;

line-height:200%;

line-height:200%;

12. list-style (dấu • định dạng đầu link) 

Thông thường trong các thủ thuật hoặc trong 1 template hay tiện ích linklist thường có các code dạng như sau:

<ul>

<li><a href=”http://www.voquocan.com/”>Võ Quốc An Blog</a></li>

<li><a href=”http://www.voquocan.com/p/sitemap.html”>Sitemap</a></li>

<li><a href=”http://www.voquocan.com/2011/01/ask.html”>Hỏi – Đáp</a></li>

<li><a href=”Liên Kết…”>Nội dung…</a></li>

</ul>

Và khi hiển thị ra ngoài thì đoạn code trên sẽ có dạng như sau:

Bạn thấy đầu mỗi dòng link có 1 cái chấm tròn không được đẹp lắm. Và dấu chấm tròn này do thuộc tính list-style quy định.

Dạng thuộc tính

list-style:none; (không hiển thị dấu chấm tròn.)

list-style: disc url(http://2.bp.blogspot.com/-Ui4xgj48Wl0/TwF2bFsiB9I/AAAAAAAAAi4/pAbob6tZM2s/s1600/iconhover.png); (dùng ảnh ở liên kết làm dấu chấm)

Chú ý: image trên blog mình mình đã gán một vài thuộc tính. Dạng list-style này bạn có thể xem trên trang Sơ Đồ Blog của mình.

list-style:upper-alpha; (thay dấu chấm bằng ký tự ABC)

list-style:decimal; (thay dấu chấm bằng số 1-2-3-4)

Thật ra còn một số dạng khác nữa nhưng ít khi dùng đến nên mình sẽ không đề cập ở đây.

13. Margin (khoảng cách giữa các module) 

Margin quy định khoảng cách từ module hiện tại đến module kề với nó.

Dạng thuộc tính:

Margin: 10px 20px 30px 40px;

Ý nghĩa các thuộc tính:

10px: khoảng cách từ module đến module bên trên

20px: khoảng cách từ module đến module bên trái

30px: khoảng cách từ module đến module bên dưới

40px: khoảng cách từ module đến module bên phải

Đây là kết quả: (bạn chú ý khoảng cách từ module đến những module xung quanh)

Module A

Chú ý: Bạn có thể thay giá trị tuyệt đối (dạng px) bằng giá trị tương đối (dạng %)

Margin: 0 auto;

0: khoảng cách từ module đến phía trên và dưới.

auto: cách đều trái phải.

Đây là kết quả:

Module A

14. Max-height (Chiều cao tối đa module) 

Max-height (Min-height)  là thuộc tính quy định chiều cao tối đa (tối thiểu) cho một module.

Dạng thuộc tính:

Max-height:150px;

Min-height:100px;

Kết quả của thuộc tính trên đây:

Khi chiều cao nội dung nhỏ hơn chiều cao module thì chiều cao module sẽ bằng min-height

Thuộc tính max-height thường đi kèm với thuộc tính overflow để giải quyết vấn đề cho phần nội dung bị thừa ra ngoài. Ví dụ:

Kết hợp thuộc tính max-height:150px; với overflow:auto; thì module được tạo ra sẽ như thế này.

15. Opacity (Độ trong suốt của một module) 

Opacity là thuộc tính quy định về độ trong suốt của module.

Dạng thuộc tính: opacity:0.5;

0.5: độ trong suốt của module. Giá trị của thuộc tính nằm trong đoạn từ 0 đến 1

Đây là kết quả mình áp dụng thuộc tính opacity cho module A.

Module B

Module A

16. Overflow (Nội dung vượt ngoài module) 

Overflow là thuộc tính qui định cách hiển thị cho phần nội dung ngoài module.

Dạng thuộc tính:

Overflow:auto;

Overflow:visible;

Overflow:hidden;

Overflow:visible;

Overflow:visible;

Overflow:visible;

17. Padding (Khoảng cách từ biên module đến phần nội dung bên trong) 

Padding quy định về khoảng cách từ phần nội dung đến biên của module.

Dạng thuộc tính (tương tự như margin)

Padding: 10px 10px 10px 10px;

Kết quả:

Padding: 10px 10px 10px 10px;

Padding: 70px 10px 30px 50px;

Padding: 70px 10px 30px 50px;

Ý nghĩa các thuộc tính:

70px: khoảng cách từ nội dung đến biên trên module

10px: khoảng cách từ nội dung đến biên trái module

30px: khoảng cách từ nội dung đến biên dưới module

50px: khoảng cách từ nội dung đến biên phải module

18. Position (Vị trí tương đối của một module) 

position có khá nhiều thuộc tính nhưng thông thường mình chỉ sử dụng 1 thuộc tính là position:fixed; để cố định vị trí của một module trên trang web (ví dụ cụ thể là thanh menu trang chủ, sơ đồ blog… trên đầu blog mình). Những thuộc tính khác mình hok tìm hiểu nên cũng không rành lắm.

Khi dùng position:fixed; người ta thường dùng kèm với 2 thuộc tính sau để định vị vị trí module

» top:10px; (cách đỉnh giao diện 10px) hoặc bottom:10px; (cách chân giao diện 10px)

» left: 10px; (cách lề trái 10px) hoặc right:10px; (cách lề phải giao diện 10px)

Bạn có thể thay giá trị tuyệt đối (dạng px) thành giá trị tương đối (dạng %)

19. Text (Thuộc tính về chữ của module) 

Text là thuộc tính quy định về chữ của module. Bao gồm các vấn đề sau:

text-align:left; chữ canh lề trái

text-align:right; chữ canh lề phải

text-align:center; chữ canh giữa

text-align:justify; chữ canh đều 2 bên

text-decoration:underline;

gạch chân dòng chữ

text-decoration:overline;

gạch trên dòng chữ

text-decoration:line-through;

gạch ngang dòng chữ

text-decoration:blink;

chữ nhấp nháy (cái này hình như chrome ko hỗ trợ)

text-transform:lowercase;

chuyển tất cả về chữ thường

text-transform:uppercase;

CHUYỂN TẤT CẢ VỀ CHỮ HOA

text-transform:capitalize;

Viết Hoa Chữ Đầu

20. Z-index (Sắp xếp module trên dưới) 

Chú ý: Bạn có thể kết hợp nhiều thuộc tính khác nhau vào một module theo dạng

.module_name{

thuộc tính thứ nhất;

thuộc tính thứ 2;

thuộc tính thứ 3;

}

Ví dụ mình có 1 class sau:

.voquocan {

background: #ccc;

border: 1px solid #aaa;

border-radius: 30px 0px 30px 0px;

box-shadow:1px 1px 2px 2px #333;

color:#991177;

font: italic bold 16px Georgia; 

height: 100px;

width: 300px;  

Margin: 10px 10px 10px 10px; 

Padding: 10px 10px 10px 10px; 

text-decoration:blink; 

text-align:center;

text-transform:uppercase; 

}

Và đây là kết quả khi gọi module ra

XIN CHÀO BẠN.

RẤT CÁM ƠN BẠN ĐÃ GHÉ THĂM BLOG CỦA MÌNH.

CHÚC BẠN CÓ MỘT NGÀY THẬT NHIỀU MAY MẮN

— — — — — —

Cơ bản về css thì đã hoàn thành. Tất nhiên còn rất nhiều css khác nhưng không thường xuyên sử dụng nên mình không đề cập ở đây. Nếu bạn gặp khó khăn gì trong việc viết ra các đoạn css này thì để lại comments bên dưới, mình sẽ cố gắng trả lời trong thời gian sớm nhất có thể. Chúc bạn thành công!