52

Tạo nền trong CSS (CSS background)

by PT on 11/04/2011, Lượt xem: 45.729

Bài viết này chúng ta sẽ cùng tìm hiểu về cách tạo màu nền và ảnh nền cho các thành phần trên trang web với thuộc tính background trong CSS.

1. Cách tạo màu nền (Background Color)

Thuộc tính background-color xác định màu nền cho một thành phần nào đó khi được chỉ định
Đoạn mã sau sẽ quy định màu nền của toàn bộ trang web là màu đen

body {background-color: #000000}


Các giá trị của background-colorcó thể là:

  • Tên màu (tiếng anh), ví dụ: black, green…
  • Hệ màu RGB, ví dụ: rgb(255,0,0)
  • Hệ hex, ví dụ: #000000
  • transparent: trong suốt (đây là một giá trị đặc biệt của background-color).

2. Cách tạo ảnh nền (Background Image)

Để tạo ảnh nền cho một thành phần nào đó, ta chỉ cần khai báo thuộc tính background-imgde cho thành phần đó.
Ví dụ:

body { background-image: url(background.gif) }

Với background.gif là file hình được đặt chung với thư mục chứa file CSS.

css background background image

Ví dụ background image

Hình bên là một ví dụ thường thấy về background image mà chúng ta thường thấy trên các trang web
Ở đây thành phần tiêu đề được sử dụng một ảnh nền.

3. Background repeat

css background repeat

css background repeat

Khi sử dụng một ảnh làm nền, nếu ảnh đó có kích thước nhỏ hơn độ lớn của thành phần đó thì ảnh nền sẽ được lặp lại để phủ kín không gian còn lại.
Thuộc tính background-repeat cho phép ta kiểm soát sự lặp lại của ảnh nền. Thuộc tính này có 4 thuộc tính như sau:
-  repeat-x: chỉ lặp lại theo phương nằm ngang (như hình bên)
-   repeat-y: chỉ lặp lại theo phương đúng
-  repeat: lặp lại theo cả 2 phương, đây là giá trị mặt định khi thuộc tính background-repeat không được khai báo.
-  no-repeat: không lặp lại.

Ở ví dụ dưới đây mình có một tấm hình có kích thước 65x35px để làm nền cho một thành phần <div class=”box”> có độ rộng 170px và độ cao 150px. Khi khai báo thuộc tính background-repeat sẽ có các kết quả tương ứng sau đây:

css backgrou image repeat-x

Khi cho repeat-x

CSS background image repeat-y

Khi cho repeat-y

CSS background image repeat

Khi cho repeat (Giá trị Mặc định)

CSS background image no-repeat

Khi cho no-repeat

3. Background attachment

Background-attachment là một thuộc tính cho phép 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ẽ được cố định khi cuộn trang.

Xem trang: 1 2

Nếu bạn thấy bài viết hữu ích, hãy nhấn +1 và các liên kết chia sẻ để website ngày càng phát triển hơn. Xin cám ơn bạn!
Hoc thiet ke web Peter Tran là một Coder, công việc hiện tại của anh ấy là phát triển ứng dụng web với PHP, thời gian rảnh anh ấy thường viết Blog chia sẻ những kiến thức về lập trình và phát triển website. Hãy xem trang cá nhân của anh ấy trên FacebookTwitter

Bài liên quan

{ 52 comments… read them below or add one }

Ewebvn Khánh Đường 23/08/2012 05:04:07 at 17:04

Mình có tí ý kiến về hình mình thấy top:0 , centre:50% và left:0 ,center : 50% nó bị trùng hình chưa chính xác. Mà phải là top:50%, center:0. Mình có thử qua trên w3schools cần chỉnh lại kẽo nhằm. Theo mình thì muốn hinh nằm theo chiều ngang thì giá trị trước rồi chiều dọc cho giá trị sau là được. Cám ơn bài viết hay.

Reply

Ewebvn Peter Tran 23/08/2012 07:12:09 at 19:12

Cám ơn bạn, mình đã sửa lại cho đúng vị trí, lấy theo cách của bạn là đúng rồi đấy, quy tắc là chúng ta lấy cạnh ngang trước, cạnh dọc sau.

Reply

Ewebvn Pacisoft Online 26/09/2012 10:18:18 at 10:18

bạn cho mình hỏi Background attachment , nếu scroll, dòng lệnh như thế nào. Cảm ơn bạn

Reply

Ewebvn PT 26/09/2012 01:03:49 at 13:03

Mặc định khi không khai báo là scroll bạn ah
Hoặc bạn có thể khai báo như sau:
background-attachment:scroll;

Reply

Ewebvn Android mib 10/10/2012 06:28:52 at 06:28

wow. hinh nhu lien ket sang trang hoi nho

Reply

Ewebvn Trần 28/11/2012 10:12:58 at 22:12

Cảm ơn bạn về bài viết. Mình làm theo như trên nhưng không hiểu sao ảnh không được hiển thị hết mà chỉ hiển thị một phần, chiều cao của ảnh bị thu lại rất bé,

Reply

Ewebvn PT 29/11/2012 01:56:32 at 01:56

Bạn kiểm tra lại xem đường dẫn đến hình ảnh đã dúng chưa?, thường thì khi ảnh nền không hiển thị là do đường dẫn đến hình không đúng.
Thân chào bạn

Reply

Ewebvn Hau 28/02/2013 02:16:51 at 14:16

Mình không thay đổi được backgroun bằng hình ảnh. (source templates html+css) chỉ có thể thay đổi bằng màu thôi! Mong được giúp đở

Reply

Ewebvn MrTrungnt 16/03/2013 09:16:42 at 09:16

bạn ơi cho mình hỏi. Giờ mình có 1 tấm hình, muốn lấy tấm đó làm hình nền cho toàn bộ trang web thì phải làm sao vậy bạn. Vì tấm hình không đủ kích thước cho toàn bộ trang chủ, thế phải làm sao.Mong được sự giúp đỡ của bạn ^^

Reply

Ewebvn Đinh Văn Phường 10/05/2013 03:44:52 at 15:44

cái này biết rồi nhưng vẫn thanh bài viết của bạn hi

Reply

Leave a Comment

AUTO[F9] TELEX VNI VIQR

Đặt code trong cặp thẻ [code] code của bạn [/code]

Những thắc mắc về lỗi code, ..., vui lòng gửi kèm demo