Thuộc tính overflow trong CSS được sử dụng để xử lý vùng đệm và vùng tràn của các phần tử trên trang web. Khi kích thước nội dung vượt quá mức cho phép phần dư sẽ được xử lý bởi thuộc tính overflow. Trong bài viết này, chúng ta sẽ tìm hiểu về thuộc tính Overflow CSS và cách áp dụng để điều khiển vùng tràn của các phần tử trang web.

1. Overflow CSS là gì?

Overflow trong CSS được coi là một thuộc tính được sử dụng để xác định hành động của nội dung vượt ra khỏi phần tử bao quanh nó. Nội dung có thể tràn ra ngoài phần tử cha theo chiều ngang hoặc dọc và cũng có thể cả hai chiều.

Ví dụ cụ thể: Nếu một phần tử có kích thước cố định và nội dung bên trong của nó vượt ra ngoài kích thước đó, thì “overflow” cho phép bạn quyết định xem nội dung đó có bị ẩn đi hoặc tràn ra ngoài phần tử bao quanh nó.

2. Các giá trị của Overflow CSS

Thuộc tính Overflow CSS có bốn giá trị chính là:

  • “visible”: Khi thuộc tính overflow có giá trị là visible thì phần nội dung bị tràn không bị cắt đi nội dung bị tràn ra sẽ ghi đè lên các phần tử khác
  • “hidden”: Phần tử cha sẽ bị ẩn đi và không hiển thị khi nội dung bị tràn ra ngoài
  • “scroll”: Khi mang giá trị scroll thì phần nội dung bị tràn ra vẫn bị cắt đi, tuy nhiên trình duyệt sẽ có thêm thanh scroll, mình có thể kéo xem phần nội dung bị ẩn đi. Thanh scroll này được thêm vào cho cả chiều dọc và chiều ngang của phần tử.
  • “auto”: Tự động xác định xem nội dung có tràn ra ngoài hay không, nếu có thì sẽ hiển thị thanh cuộn, nếu không thì không hiển thị

Ví dụ:

Trong ví dụ này, một phần tử div có kích thước 200px; x 100px; và khi nội dung bên trong nó bị tràn ra ngoài, thanh cuộn sẽ được thêm vào để người dùng có thể cuộn để xem nội dung bị tràn đó.

Ngoài ra, còn có hai thuộc tính phụ là “overflow-x” và “overflow-y”, được sử dụng để kiểm soát tràn nội dung theo chiều ngang hoặc dọc.

Các trường hợp sử dụng “overflow” phổ biến bao gồm:

  • Hiển thị nội dung bị tràn ra khỏi phần tử cha
  • Ẩn hoặc loại bỏ nội dung bị tràn ra khỏi phần tử cha
  • Tạo các hiệu ứng trượt và hiển thị phần tử khi di chuột qua
  • Kiểm soát tràn nội dung trong các phần tử cố định vị trí hoặc các phần tử động.

Tuy nhiên, sử dụng “overflow” có thể gặp phải các vấn đề, chẳng hạn như lỗi bị đè lên nhau và xung đột với các thuộc tính khác. Để tránh các vấn đề này, cần kiểm tra kỹ thuật rồi thực hiện kiểm tra đa nền tảng cho các trang web.

>>> Xem thêm bài viết:

- Hướng dẫn cài đặt Web server Apache trên CentOS 7

- Cài đặt cấu hình cân bằng tải với HaProxy và Docker

- Tìm hiểu về ràng buộc (Constraint) trong SQL

3. Cách sử dụng các thuộc tính Overflow CSS

Thuộc tính “overflow” trong CSS được sử dụng để kiểm soát tràn nội dung của một phần tử. Bạn có thể sử dụng thuộc tính này để hiển thị hoặc ẩn nội dung và điều chỉnh phương thức hiển thị tràn nếu có. Cách sử dụng cơ bản:

3.1 Ẩn nội dung tràn:

Sử dụng thuộc tính “overflow:hidden” để ẩn nội dung bị tràn. Khi sử dụng thuộc tính này, nội dung sẽ bị ẩn đi và không thể xem được.

Ví dụ:

3.2 Hiển thị thanh cuộn:

Thuộc tính “overflow: scroll” để hiển thị thanh cuộn khi nội dung vượt quá kích thước của phần tử. Khi sử dụng thuộc tính này, thanh cuộn sẽ xuất hiện để cho phép người dùng cuộn để xem nội dung bên trong phần tử.

Ví dụ:

3.3 Hiển thị thanh cuộn ngang:

Bạn có thể sử dụng thuộc tính “overflow-x; scroll” để chỉ định thanh cuộn ngang hiển thị khi nội dung tràn ra phía ngang của phần tử.

3.4 Hiển thị thanh cuộn dọc:

Thuộc tính “overflow-y; scroll’ để chỉ định thanh cuộn dọc hiển thị khi nội dung tràn ra phía dọc của phần tử.

3.5 Hiển thị nội dung tràn:

Bạn có thể sử dụng thuộc tính “overflow;auto” để hiển thị nội dung tràn bên trong phần tử. Khi sử dụng thuộc tính này, thanh cuộn sẽ chỉ xuất hiện khi nội dung vượt quá kích thước của phần tử.

Ví dụ:

Khi sử dụng các giá trị của thuộc tính “overflow” để điều chỉnh phương thức hiển thị tràn phù hợp với nhu cầu của bạn. Tuy nhiên, cần lưu ý rằng khi sử dụng “overflow” có thể gây ra một số vấn đề, như được đề cập trong câu trả lời trước đó.

>>> Mời bạn tham khảo thêm các bài viết:

- Các kiểu dữ liệu trong Python

- Hướng dẫn lập trình web với ngôn ngữ python

- Khám Phá Lập Trình Web Với Python: Khái Niệm & Các Framework

4. Các vấn đề thường gặp khi sử dụng Overflow CSS

Bên cạnh những ưu điểm kiểm soát nội dung bị tràn thì thuộc tính “overflow” cũng có một số vấn đề thường gặp khi sử dụng như:

  • Chồng chéo lỗi lên nhau (Overflow stacking): Đây là trường hợp khi các phần tử con có thuộc tính “overflow” khác nhau được đặt trong một phần tử cha có thuộc tính “overflow” khác. Khi đó, tràn nội dung có thể bị che khuất hoặc không hiển thị đúng cách.
  • Không đồng nhất trên các trình duyệt: Một số trình duyệt có thể hiển thị “overflow” khác nhau khi định dạng trang web. Điều này có thể dẫn đến các vấn đề kiểu dáng và tốc độ tải trang
  • Thiết lập sai kích thước: Khi sử dụng thuộc tính “overflow” trong CSS, bạn phải đảm bảo rằng phần tử có đủ không gian để hiển thị nội dung bên trong. Nếu không, nội dung có thể bị cắt hoặc không hiển thị đúng cách
  • Không có tính đáp ứng tốt: Thuộc tính “overflow” không phản ánh được các thiết bị hoặc kích thước màn hình khác nhau. Do đó, bạn có thể phải sử dụng các kỹ thuật khác để đáp ứng với các kích thước màn hình khác nhau.
  • Không tương thích với trình dọc màn hình: Thuộc tính “overflow” có thể không tương thích với các trình đọc màn hình hoặc các công nghệ hỗ trợ khác, do đó có thể ảnh hưởng đến khả năng truy cập của người dùng.

Để tránh các vấn đề trên, bạn nên kiểm tra kỹ thuật định dạng trang web và sử dụng các phương pháp kiểm tra khác để đảm bảo rằng trang web của bạn hoạt động tốt trên nhiều trình duyệt và thiết bị khác nhau.

Tạm kết

Qua bài viết trên, cho thấy việc sử dụng “overflow” phải đảm bảo tính tương thích và cải thiện trải nghiệm người dùng. Vì vậy, hãy sử dụng nó một cách cẩn thận và đúng cách để mang lại giá trị cho trang web của bạn. Theo dõi stringee để cập nhật thêm các kiến thức mới nhất về công nghệ.


Stringee Communication APIs là giải pháp cung cấp các tính năng giao tiếp như gọi thoại, gọi video, tin nhắn chat, SMS hay tổng đài CSKH cho phép tích hợp trực tiếp vào ứng dụng/website của doanh nghiệp nhanh chóng. Nhờ đó giúp tiết kiệm đến 80% thời gian và chi phí cho doanh nghiệp bởi thông thường nếu tự phát triển các tính năng này có thể mất từ 1 - 3 năm.

Bộ API giao tiếp của Stringee hiện đang được tin dùng bởi các doanh nghiệp ở mọi quy mô, lĩnh vực ngành nghề như TPBank, VOVBacsi24, VNDirect, Shinhan Finance, Ahamove, Logivan, Homedy,  Adavigo, bTaskee…

Quý bạn đọc quan tâm xin mời đăng ký NHẬN TƯ VẤN TẠI ĐÂY: