Showing posts with label css. Show all posts
Showing posts with label css. Show all posts

4/8/14

Các thuộc tính định dạng chung

Tạo file HTML và CSS có cấu trúc thư mục và nội dung như sau:

Cấu trúc thư mục

Click vào dấu [+] để xem cấu trúc.

HTML viết

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tiêu đề trang web</title>
<link href="css/style.css" rel="stylesheet" type="text/css" media="screen,print" />
</head>

<body>
<div>
<p>Thành phần không có CSS.</p>
<p class="cssStyle">Thành phần có CSS.<br />
Thành phần có CSS.<br />
Thành phần có CSS.<br />
Thành phần có CSS.</p>
</div>
</body>
</html>

CSS viết

p.cssStyle {
}

Hiển thị trình duyệt khi chưa sử dụng CSS

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính background

  • Thuộc tính background được dùng để định dạng nền cho thành phần.
  • Các dạng thuộc tính background:
    • background-color: xác định màu cho nền.
    • background-image: xác định hình cho nền.
    • background-position: xác định vị trí cho nền, thường được sử dụng kèm với background-image.
    • background-repeat: xác định hình nền được lặp lại như thế nào.
    • background-attachment: xác định thành phần nền được cố định hoặc cuộn so với trang, được sử dụng kèm với background-image.
    • background: dạng tổng quát, kết hợp của các loại background trên.

Cấu trúc background-color viết dạng tổng quát

tag {
background: giá trị;
}
Giá trị của thuộc tính background-color: 
  • Giá trị theo hệ thập lục phân: gồm dấu "#" kết hợp với dãy ký tự latin (chỉ bao gồm số hoặc chữ).
    VD: color: #ff0000;
  • Giá trị theo kết hợp màu RGB: Đây là dạng kết hợp của 3 loại màu, màu đỏ (Red), màu xanh lá (Green), màu xanh dương (Blue).
    VD: color: rgb(255,0,0); // chuỗi giá trị từ 0 tới 255
  • Giá trị theo tên tiếng anh: tên màu sắc viết bằng tiếng anh.
    VD: color: red;

CSS viết

p.cssStyle {
background: blue;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Cấu trúc background-image viết dạng tổng quát

tag {
background: url(đường dẫn hình);
}

CSS viết

p.cssStyle {
background: url(../images/img_webstandard.gif);
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính border

  • Thuộc tính border được dùng để định dạng đường viền cho thành phần.
  • Các thuộc tính border:
    Thuộc tính định dạng
    • border-color: màu cho đường viền
    • border-style: kiểu cho đường viền
    • border-width: độ rộng cho đường viền
    Thuộc tính vị trí
    • border-top: đường viền hiển thị bên trên
    • border-right: đường viền hiển thị bên phải
    • border-bottom: đường viền hiển thị bên dưới
    • border-left: đường viền hiển thị bên trái
    • border: đường viền hiển thị bao quanh thành phần

Cấu trúc

tag {
border-vị trí: [màu sắc] [kiểu] [độ rộng];
}
Tham khảo thêm [màu sắc].
Tham khảo thêm [kiểu] của border.
Độ rộng có thể được tính theo các loại đơn vị khác nhau (thường dùng nhất là dạng điểm ảnh - px, phần trăm - %, em).

Thuộc tính border-top, CSS viết

p.cssStyle {
border-top: #ff0000 solid 2px;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính border-right, CSS viết

p.cssStyle {
border-right: #ff0000 solid 2px;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính border-bottom, CSS viết

p.cssStyle {
border-bottom: #ff0000 solid 2px;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính border-left, CSS viết

p.cssStyle {
border-left: #ff0000 solid 2px;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính border, CSS viết

p.cssStyle {
border: #ff0000 solid 2px;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính height

  • Thuộc tính height được dùng để định dạng chiều cao cho thành phần.
  • Tham khảo thêm về thuộc tính height.

Cấu trúc

tag {
height: giá trị;
}
Giá trị có thể được tính theo các loại đơn vị khác nhau (thường dùng nhất là dạng điểm ảnh - px, phần trăm - %,em).

CSS viết

p.cssStyle {
border: 2px solid red;
height: 150px;
}
Thêm thuộc tính border để dễ thấy được chiều cao của thành phần.

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính width

  • Thuộc tính width được dùng để định dạng chiều rộng cho thành phần, nếu không sử dụng thành phần này thì chiều rộng mặc định của thành phần sẽ mang giá trị "auto".
  • Tham khảo thêm về thuộc tính width.

Cấu trúc

tag {
width: giá trị;
}
Giá trị có thể được tính theo các loại đơn vị khác nhau (thường dùng nhất là dạng điểm ảnh - px, phần trăm - %,em).

CSS viết

p.cssStyle {
border: 2px solid red;
width: 200px;
}
Thêm thuộc tính border để dễ thấy được chiều rộng của thành phần.

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính text-align

  • Thuộc tính text-align được dùng để sắp xếp vị trí cho thành phần, nếu không sử dụng thành phần này thì vị trí mặc định của thành phần sẽ mang giá trị "left".
  • Tham khảo thêm về thuộc tính text-align.

Cấu trúc

tag {
text-align: giá trị;
}
Thuộc tính text-align có các giá trị.
  • left: thành phần canh về phía bên trái
  • right: thành phần canh về phía bên phải
  • center: thành phần canh giữa
  • justify: thành phần canh đều 2 bên, thường dùng cho text

CSS viết

p.cssStyle {
text-align: center;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Các thuộc tính định dạng cho text

Tạo file HTML và CSS có cấu trúc thư mục và nội dung như sau:

Cấu trúc thư mục

Click vào dấu [+] để xem cấu trúc.

HTML viết

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tiêu đề trang web</title>
<link href="css/style.css" rel="stylesheet" type="text/css" media="screen,print" />
</head>

<body>
<div>
<p>Thành phần không có CSS.</p>
<p class="cssStyle">Thành phần có CSS.<br /> Thành phần có CSS.<br /> Thành phần có CSS.<br /> Thành phần có CSS.</p>
</div>
</body>
</html>

CSS viết

p.cssStyle {
}

Hiển thị trình duyệt khi chưa sử dụng CSS

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính color

  • Thuộc tính color được dùng để định dạng màu sắc cho thành phần.
  • Tham khảo thêm về thuộc tính color.

Cấu trúc

tag {
color: giá trị;
}
Giá trị của thuộc tính color: (Tham khảo)
  • Giá trị theo hệ thập lục phân: gồm dấu "#" kết hợp với dãy ký tự latin (chỉ bao gồm số hoặc chữ).
    VD: color: #ff0000;
  • Giá trị theo kết hợp màu RGB: Đây là dạng kết hợp của 3 loại màu, màu đỏ (Red), màu xanh lá (Green), màu xanh dương (Blue).
    VD: color: rgb(255,0,0); // chuỗi giá trị từ 0 tới 255
  • Giá trị theo tên tiếng anh: tên màu sắc viết bằng tiếng anh.
    VD: color: red;

CSS viết

p.cssStyle {
color: #ff0000;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính font-size

  • Thuộc tính font-size được dùng để định dạng cỡ chữ cho thành phần.
  • Tham khảo thêm về thuộc tính font.

Cấu trúc

tag {
font-size: giá trị;
}
Giá trị có thể được tính theo các loại đơn vị khác nhau (thường dùng nhất là dạng điểm ảnh - px, phần trăm - %,em).

CSS viết

p.cssStyle {
font-size: 200%;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính font-family

  • Thuộc tính font-family được dùng để định dạng kiểu chữ cho thành phần.
  • Tham khảo thêm về thuộc tính font.

Cấu trúc

tag {
font-family: kiểu chữ;
}
Font có nhiều kiểu chữ khác nhau, tham khảo thêm

CSS viết

p.cssStyle {
font-family: "Courier New", Courier, monospace;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính font-weight

  • Thuộc tính font-weight được dùng để định dạng độ dày của chữ cho thành phần.
  • Tham khảo thêm về thuộc tính font.

Cấu trúc

tag {
font-weight: giá trị;
}
Giá trị chính của font-weight gồm: bold, bolder, lighter, normal, 100, 200, 300, 400, 500, 600, 700, 800, 900

CSS viết

p.cssStyle {
font-weight: bold;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính font-style

  • Thuộc tính font-style được dùng để định dạng kiểu chữ cho thành phần.
  • Tham khảo thêm về thuộc tính font.

Cấu trúc

tag {
font-style: giá trị;
}
Các giá trị chính cho thuộc tính font-style gồm: italic, oblique, normal.

CSS viết

p.cssStyle {
font-style: italic;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính letter-spacing

  • Thuộc tính letter-spacing được dùng để định dạng khoảng cách các ký tự cho thành phần.
  • Tham khảo thêm về thuộc tính letter-spacing.

Cấu trúc

tag {
letter-spacing: giá trị;
}
Giá trị có thể được tính theo các loại đơn vị khác nhau (thường dùng nhất là dạng điểm ảnh - px, phần trăm - %,em).

CSS viết

p.cssStyle {
letter-spacing: 5px;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính line-height

  • Thuộc tính line-height được dùng để định dạng khoảng cách các dòng cho thành phần.
  • Tham khảo thêm về thuộc tính line-height.

Cấu trúc

tag {
line-height: giá trị;
}
Giá trị có thể là số không đơn vị hoặc có đơn vị, tham khảo các loại đơn vị khác nhau.

CSS viết

p.cssStyle {
line-height: 5;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính text-decoration

  • Thuộc tính text-decoration được dùng xác định thành phần có gạch dưới hay không.
  • Tham khảo thêm về thuộc tính text-decoration.

Cấu trúc

tag {
text-decoration: giá trị;
}
Các giá trị chính cho thuộc tính text-decoration gồm: blink, line-through, overline, underline, none

CSS viết

p.cssStyle {
text-decoration: underline;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Thuộc tính word-spacing

  • Thuộc tính word-spacing được dùng để định dạng khoảng cách giữa các từ cho thành phần.
  • Tham khảo thêm về thuộc tính word-spacing.

Cấu trúc

tag {
word-spacing: giá trị;
}
Giá trị có thể được tính theo các loại đơn vị khác nhau (thường dùng nhất là dạng điểm ảnh - px, phần trăm - %,em).

CSS viết

p.cssStyle {
word-spacing: 10px;
}

Hiển thị trình duyệt:

Thành phần không có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.
Thành phần có CSS.

Sử dụng CSS

Nội fung file index.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tiêu đề trang web</title>
</head>

<body>
...Phần thân viết ở đây...
</body>
</html>

Nội fung file style.css

Nếu không có nội dung thì file CSS có thể là file rỗng, hoặc chứa dòng khai báo charset, ở đây ta tạm thời sử dụng file rỗng:
 

Kết nối file CSS vào file HTML

Chúng ta kết nối file CSS vào file HTML thông qua thẻ <link>, cách sử dụng thẻ này như thế nào các bạn có thể xem bên phần tham khảo.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tiêu đề trang web</title>
<link href="css/style.css" rel="stylesheet" type="text/css" media="screen,print" />
</head>

<body>
...Phần thân viết ở đây...
</body>
</html>
Thuộc tính href ta phân tích như sau:
  • style.css là một file có tên là style với định dạng file là .css
  • css là folder chứa file style.css
Như vậy css/style.css sẽ dẫn đường dẫn tới file style.css trong thư mục css.

Cách viết một nội dung CSS

Viết nội dung CSS theo cấu trúc như sau:
Bộ chọn { thuộc tính: giá trị; }
p { color: red; }
Chúng ta có thể viết nhiều cặp thuộc tính và giá trị cho bộ chọn, mỗi cặp thuộc tính và giá trị có thể viết cách nhau bởi dấu chấm phẩy.
p { color: red; float: left; padding-left: 10px; }
Đoạn code trên tương tự như đoạn code sau:
p {
color: red;
float: left;
padding-left: 10px;
}

Cách viết bộ chọn CSS

Giả sử ta có file HTML như sau:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tiêu đề trang web</title>
<link href="css/style.css" rel="stylesheet" type="text/css" media="screen,print" />
</head>

<body>
<div id="content">
<ul>
<li>Mục 01</li>
<li>Mục 02</li>
<li>Mục 03</li>
<li>Mục 04</li>
</ul>
<p>Đoạn văn</p>
</div>

<div class="navi">
<p>Nội dung navi</p>
</div>
</body>
</html>

Bộ chọn theo tên id

tag#tênid { thuộc tính: giá trị; }
  • Bắt buộc phải có ký tự dấu "#" và tênid
div#content { width: 600px; }

Bộ chọn theo tên class

tag.tênclass { thuộc tính: giá trị; }
  • Bắt buộc phải có ký tự dấu "." và tênclass
div.navi { background: #333333; }

Bộ chọn theo cấp bậc

[tag cha] [tag con] [tag cháu] { thuộc tính: giá trị; }
  • Cấu trúc này không bắt buộc, tuy nhiên cấu trúc này sẽ thuận tiện trong việc điều chỉnh các thành phần con bên trong, và cũng để xác định thứ tự ưu tiên trong CSS.
  • Trong file HTML bên trên, trong phần content và navi đều có tồn tại thành phần <p> nếu sử dụng cách chọntag { thuộc tính: giá trị;} thì ta sẽ không thể nào chọn được đâu là thành phần thuộc content, đâu là thành phần thuộc navi, tuy nhiên sử dụng cách chọn theo cấp bậc thì việc này lại rất dễ dàng:
div#content p { color: #333333; } /* Chon thanh phan p theo content*/

div.navi p { background: #333333; } /* Chon thanh phan p theo navi*/

div#content ul li { display: inline; } /* Chon thanh phan li theo content*/
Chúng ta có thể xem thêm các bộ chọn khác tại phần tham khảo.

Cách viết một comment trong file CSS

Comment là một dạng ghi chú, giúp người viết code giải thích nghĩa cho từng đoạn code, cách viết một comment trong CSS như sau:
/* Đây là dòng comment */

4/7/14

Thuộc tính CSS

backgroundbackground: #ff0000;Định dạng nền (background) cho thành phần.
borderborder: 1px solid #ff0000;Định dạng đường viền cho thành phần.
border-collapseborder-collapse: collapse;Thuộc tính border-collapse xác định đường viền củatable có tách biệt ra hay không.
border-spacingborder-spacing: 10px;Xác định khoảng cách giữa các đường viền của các cột lân cận.
bottombottom: 10px;Xác định vị trí dưới cùng của thành phần được định vị trí.
caption-sidecaption-side: bottom;Xác định vị trí một chú thích của table.
clearclear: both;Xác định 2 bên của phần tử (left, right), nơi mà phần tử float không được cho phép.
clipclip: rect(0,0,50px,10px);Xác định đoạn cho thành phần khi sử dụng thuộc tính position có giá trị "absolute".
colorcolor: #ff0000;Xác định màu sắc cho text.
contentcontent: "."Sử dụng kèm với bộ chọn ":before", ":after" để chèn nội dung được tạo.
counter-incrementcounter-increment: section;Gia tăng một hoặc nhiều counter (sắp xếp có thứ tự, có hiển thị số)
counter-resetcounter-reset: subsection;Tạo hoặc reset một hoặc nhiều counter.
cursorcursor: pointer;Xác định kiểu con trỏ chuột được hiển thị.
directiondirection: ltr;Xác định hướng cho văn bản.
displaydisplay: inline;Xác định loại hiển thị của thành phần.
empty-cellsempty-cells: hide;Xác định có hay không có đường viền và nền trong một cột rỗng của table
floatfloat: left;Xác định có hay không một thành phần được float.
fontfont: 12px arial,sans-serif;Thiết lập font cho thành phần, bao gồm font chữ, độ rộng, ...
heightheight: 50px;Thiết lập chiều cao của thành phần.
leftleft: 10px;Xác định vị trí bên trái của thành phần định vị trí (như position)
letter-spacingletter-spacing: 2px;Tăng hoặc giảm khoảng cách giữa các ký tự trong đoạn text.
line-heightline-height: 1.5;Thiết lập chiều cao giữa các dòng.
list-stylelist-style: decimal;Thiết lập kiểu cho một danh sách.
marginmargin: 15px;Canh lề cho thành phần.
max-heightmax-height: 200px;Thiết lập chiều cao tối đa của thành phần.
max-widthmax-width: 900px;Thiết lập chiều rộng tối đa của thành phần.
min-heightmin-height: 100px;Thiết lập chiều cao tối thiểu của thành phần.
min-widthmin-width: 600px;Thiết lập chiều rộng tối thiểu của thành phần.
outlineoutline: dotted;Định dạng các đường viền bao ngoài
overflowoverflow: scroll;Xác định điều gì sẽ xảy ra nếu một thành phần box tràn nội dung.
paddingpadding: 15px;Thiết lập các thuộc tính padding trong một khai báo.
page-break-afterpage-break-after: alway;Xác định các phân chia văn bản ngay sau thành phần.
page-break-beforepage-break-before: alway;Xác định các phân chia văn bản ngay trước thành phần.
page-break-insidepage-break-inside: alway;Xác định các phân chia văn bản ngay bên trong thành phần.
positionposition: absolute;Xác định loại của phương pháp định vị trí cho thành phần.
quotes"‘" "’"Thiết lập các loại dấu ngoặc bao ngoài khi nhúng một trích dẫn.
rightright: 10px;Xác định vị trí bên phải của thành phần định vị trí (như position)
table-layouttable-layout: fixed;Thiết lập các thuật toán layout được sử dụng cho table.
text-aligntext-align: center;Sắp xếp các nội dung theo chiều ngang.
text-decorationtext-decoration: underline;Xác định các trang trí thêm cho text.
text-indenttext-indent: 10px;Ghi rõ thụt đầu dòng của dòng đầu tiên trong một khối văn bản.
text-transformtext-transform: uppercase;Thiết lập các ký tự viết hoa cho văn bản.
toptop: 10px;Xác định vị trí bên trên của thành phần định vị trí (như position)
vertical-alignvertical-align: middle;Sắp xếp các nội dung theo chiều dọc.
visibilityvisibility: visible;Xác định thành phần có được nhìn thấy hay không.
white-spacewhite-space: nowrap;Xác định khoảng trắng có bên trong thành phần được xử lý như thế nào.
widthwidth: 800px;Thiết lập chiều rộng cho thành phần.
word-spacingword-spacing: 5px;Tăng hoặc giảm không gian giữa các từ trong đoạn văn bản.
z-indexz-index: 100;Thiết lập thứ tự xếp chồng nhau của một thành phần vị trí.