Thay đổi kích thước hình ảnh bằng CSS với thuộc tính object-fit

Mình chắc chắn trong các bạn ai cũng đã ít nhất 1 lần phải đau đầu vì thay đổi kích thước mặc định của ảnh mà không theo tỉ lệ sao cho ảnh không bị vỡ. Đa số các bạn sẽ lựa chọn giải pháp dùng Photoshop để giải quyết vấn đề này. Hôm nay mình xin giới thiệu một thuộc tính trong CSS3 có thể giải quyết rắc rối này thay cho bạn. Đó là object-fit.

Object-fit trong CSS

Thuộc tính object-fit được sử dụng để thay đổi kích thước của <img> hay <video> sao cho phù hợp với vùng chứa của nó.

Hãy cùng xem qua ví dụ này để hiểu rõ hơn nhé.

Ví dụ: Đây là tấm ảnh gốc có kích thước 375×500.

 object-fit trong css object-fit trong css

 

Tuy nhiên nếu bạn muốn hình có kích thước 375×375 thì nó sẽ trông như thế này.

 object-fit trong css object-fit trong css

Bức ảnh bị vỡ khi ta thay đổi kích thước không tỉ lệ với kích thước gốc của ảnh

 

Nhưng nếu bạn dùng object-fit: cover;  thì điều gì sẽ xảy ra.

 object-fit trong css object-fit trong css

Bức ảnh hoàn toàn không bị vỡ mặc dù kích thước thay đổi không tỉ lệ với ảnh gốc

 

Thật kì diệu đúng không nào.

Ngoài object-fit: cover;  ra thì object-fit còn có các giá trị như.

  • object-fit:fill;
  • object-fit:contain;
  • object-fit:none;
  • object-fit:scale-down;

 

Xem ví dụ này để tìm hiểu chi tiết hơn nhé.

Bài viết này mình có tham khảo trên w3schools. Các bạn nhớ like Fanpage để theo dõi các bài viết mới của mình nhé.