2013-04-23 33 views
6

Tôi đang hiển thị hình ảnh vào div của tôi. Tôi muốn tránh kéo dài hình ảnh của mình.Tránh căng hình ảnh css

div { 
      height: 300px; 
      width: 300px; 
     } 
    img { 
      min-width: 300px; 
      min-height: 300px; 
      max-height: 300px; 
     } 

Vấn đề của tôi là hình ảnh của tôi được vẽ trên bề rộng. Tôi muốn được chiều rộng bình thường, mặc dù một số hình ảnh sẽ bỏ lỡ.

div { 
      height: 300px; 
      width: 300px; 
      overflow: hidden; 
     } 
    img { 
      height: 300px 
      max-width: none; 
      min-width: 300px; 
     } 

Tôi đã giải quyết.

+0

Nếu bạn muốn hình ảnh có chiều rộng tự động không đặt bất kỳ kiểu nào trên đó. – Pavlo

+0

Kích thước của hình ảnh là gì? – snumpy

+0

Bạn đặt 'chiều rộng tối thiểu ', cho biết chiều rộng tối thiểu là' 300px'. Ý của bạn là 'max-width'? –

Trả lời

2

Đặt hình ảnh làm nền div nếu bạn muốn tránh kéo dài cách dễ nhất (vẫn duy trì độ rộng ban đầu).

+0

Tôi nghĩ điều này sẽ giải quyết được vấn đề. – Zincktest

0

Sử dụng max-width thay vì min-width và chỉ cần đặt height thành 300px (hoặc chỉ sử dụng max-height).

1

Bạn có thể sử dụng overflow:hidden để ẩn bất kỳ phần nào của hình ảnh bên ngoài chiều rộng của div.

div { 
     height: 300px; 
     width: 300px; 
     overflow: hidden; 
    } 
img { 
     /*min-width: 300px;*/ 
     height: 300px; 
    } 
8

Tôi sẽ quên đặt chiều cao tối thiểu và chiều cao tối đa. Chỉ cần thiết lập chiều cao là 300 pixel và đặt một overflow hidden trên thẻ div. Bằng cách đó không có vấn đề gì kích thước hình ảnh nó sẽ luôn luôn ở tỷ lệ và không bao giờ đi ra ngoài ranh giới của thẻ div của bạn.

div { height: 300px; width: 300px; overflow: hidden; } 
img { height: 300px; } 
Các vấn đề liên quan