Home » Thủ thuật blog
Tạo thumbnail cho ảnh với CSS
Thứ Hai, 30 tháng 5, 2011
Thông thường khi muốn tạo ảnh thumbnail ta thường dùng cách bóp ảnh lại bằng việc sử dụng các lệnh width, height. Khi bóp ảnh như thế, nếu bóp theo 2 chiều (width và height) thì ảnh thường bị méo dạng (không còn tỉ lệ với ảnh gốc), nếu không muốn gặp hiện tượng này thì chỉ nên bóp theo 1 chiều. Tuy nhiên, ở những phần, ví dụ như tiện ích recent post, các bạn muốn các ảnh thumbnail được đều nhau, và có cùng kích cỡ thì việc bóp ảnh theo 1 chiều không đáp ứng được. Và hôm nay mình sẽ giới thiệu cho các bạn 1 các để lấy ảnh thumbnail từ ảnh gốc mà chỉ cần dùng CSS.
Mình sẽ giải thích sơ về cách thức này. Giả sử ta có 1 tấm ảnh và 1 tờ giấy màu (màu đen chẳng hạn, và kích thước tờ giấy màu sẽ lớn hơn tấm ảnh), sau đó ta cắt 1 cái lỗ hình vuông trên tờ giấy màu, kích cỡ tùy ý (giả sử 200x200px). Rồi ta đặt tờ giấy màu trên tấm ảnh, khi đó ta sẽ nhìn được 1 phần tấm ảnh qua cái lỗ mà ta đã cắt trên tờ giấy màu. Và phần ảnh ta thấy được này sẽ là ảnh thumbnail. Để tùy chỉnh vùng ảnh để hiển thị ảnh thumbnail thì ta chỉ việc dịch chuyển tờ giấu hoặc dịch chuyển ảnh.
Ảnh thumbnail lấy được:

* Các bước thực hiện:
- đầu tiên các bạn chèn code CSS bên dưới vào trong code template (chèn vào trước dòng code ]]></b:skin> trong code template)
+ Các top, left trong class div.thumb img chính là vị trí góc trái trên của ảnh thumbnail (so với ảnh gốc).
+ Khi muốn hiển thị ảnh thumbnail thì bạn chỉ việc dùng code tương tự như bên dưới
Chúc các bạn thành công.
Tags:
B-basic, CSS, Thu Thuat Blog, Thủ thuật blog
Mình sẽ giải thích sơ về cách thức này. Giả sử ta có 1 tấm ảnh và 1 tờ giấy màu (màu đen chẳng hạn, và kích thước tờ giấy màu sẽ lớn hơn tấm ảnh), sau đó ta cắt 1 cái lỗ hình vuông trên tờ giấy màu, kích cỡ tùy ý (giả sử 200x200px). Rồi ta đặt tờ giấy màu trên tấm ảnh, khi đó ta sẽ nhìn được 1 phần tấm ảnh qua cái lỗ mà ta đã cắt trên tờ giấy màu. Và phần ảnh ta thấy được này sẽ là ảnh thumbnail. Để tùy chỉnh vùng ảnh để hiển thị ảnh thumbnail thì ta chỉ việc dịch chuyển tờ giấu hoặc dịch chuyển ảnh.
Bên dưới là ảnh minh họa
Còn đây là demo
Ảnh gốc
Ảnh thumbnail lấy được:

* Các bước thực hiện:
- đầu tiên các bạn chèn code CSS bên dưới vào trong code template (chèn vào trước dòng code ]]></b:skin> trong code template)
/* CSS thumbnail */
div.thumb{
margin:.5em 0;
margin-right:10px;
border:1px solid #999;
padding:2px;
}
div.thumb {
display:block;
width:100px;
height:100px;
line-height:100px;
overflow:hidden;
position:relative;
z-index:1;
}
div.thumb img{
position:absolute;
top:-20px;
left:-50px;
}
/* END CSS thumbnail */
div.thumb{
margin:.5em 0;
margin-right:10px;
border:1px solid #999;
padding:2px;
}
div.thumb {
display:block;
width:100px;
height:100px;
line-height:100px;
overflow:hidden;
position:relative;
z-index:1;
}
div.thumb img{
position:absolute;
top:-20px;
left:-50px;
}
/* END CSS thumbnail */
- 1 số lưu ý về code CSS ở trên:
+ các giá trị width, height trong class div.thumb là chiều cao và độ rộng của ảnh thumbnail.+ Các top, left trong class div.thumb img chính là vị trí góc trái trên của ảnh thumbnail (so với ảnh gốc).
+ Khi muốn hiển thị ảnh thumbnail thì bạn chỉ việc dùng code tương tự như bên dưới
<div class="thumb"><img src="Link ảnh" /></div>
+ Ngoài ra, nếu ảnh lớn quá, mà ta muốn lấy ảnh thumbnail nhỏ thì (vì khi đó ảnh thumbnail sẽ ko thể hiện hết được ảnh gốc) bạn có thể resize ảnh gốc nhỏ lại, ví dụ như bên dưới:<div class="thumb"><img src="Link ảnh" width="200" /></div>
Chúc các bạn thành công.

- Kỹ thuật tạo bóng đổ cho ảnh hoặc cho các khối nội dung
- Một ứng dụng của lệnh position : Chèn tiện ích vào banner (Header)
- Modify Form Comment : Bài 11 - Gắn Tem cho bài comment đầu tiên
- [ Yêu cầu ] : Giới hạn việc xem blog cho trình duyệt IE
- [ Yêu cầu ] chỉ hiển thị tiện ích với quản trị blog
- Kỹ thuật load ảnh trước bằng CSS
- CSS menu liDock - Một dạng menu Dock
- 4+ Hiệu ứng TEXT đơn giản từ CSS
- Menu dọc sổ ngang - Chỉ sử dụng CSS
- Bo 2 cạnh bên với CSS dùng hình ảnh
- Tạo ngôi hình ngôi sao với CSS Border
- 18 đọan code CSS ngắn - Rất có ích cho việc chỉnh sửa code CSS của template
Comments[ 0 ]
Đăng nhận xét