Hướng dẫn ways to hide element css - cách ẩn css phần tử

Có nhiều cách để ẩn một yếu tố trong CSS, nhưng chúng khác nhau về cách chúng ảnh hưởng đến khả năng tiếp cận, bố cục, hoạt hình, hiệu suất và xử lý sự kiện.

Hoạt hình

Một số tùy chọn ẩn CSS là tất cả hoặc không có gì. Phần tử này có thể nhìn thấy đầy đủ hoặc vô hình và không có trạng thái ở giữa. Những người khác, chẳng hạn như tính minh bạch, có thể có một loạt các giá trị, do đó các hình ảnh động CSS được nội suy trở nên có thể.

Khả năng tiếp cận

Mỗi phương thức được mô tả dưới đây sẽ ẩn trực quan một phần tử, nhưng nó có thể hoặc không thể ẩn nội dung khỏi các công nghệ hỗ trợ. Ví dụ, một đầu đọc màn hình vẫn có thể thông báo văn bản trong suốt nhỏ. Các thuộc tính CSS hoặc các thuộc tính ARIA như aria-hidden="true" có thể là cần thiết để mô tả hành động thích hợp.

Hãy cảnh giác rằng hoạt hình cũng có thể gây ra sự mất phương hướng, đau nửa đầu, co giật hoặc khó chịu về thể chất khác cho một số người. Xem xét sử dụng truy vấn phương tiện prefers-reduced-motion để tắt hình ảnh động khi được chỉ định trong tùy chọn người dùng.

Xử lý sự kiện

Hiding sẽ dừng các sự kiện được kích hoạt trên phần tử đó hoặc không có hiệu lực - nghĩa là, phần tử không hiển thị nhưng vẫn có thể được nhấp hoặc nhận các tương tác người dùng khác.

Màn biểu diễn

Sau khi trình duyệt tải và phân tích mô hình đối tượng HTML DOM và CSS, trang được hiển thị trong ba giai đoạn:

  1. Bố cục: Tạo hình học và vị trí của từng phần tử generate the geometry and position of each element
  2. Sơn: Vẽ ra các pixel cho mỗi phần tử draw out the pixels for each element
  3. Thành phần: Các lớp phần tử vị trí theo thứ tự thích hợp: position element layers in the appropriate order

Một hiệu ứng chỉ gây ra sự thay đổi thành phần là mượt mà hơn đáng kể so với những ảnh hưởng đến bố cục. Trong một số trường hợp, trình duyệt cũng có thể sử dụng gia tốc phần cứng.

1. opacity và filter: opacity()

Các thuộc tính opacity: Nfilter: opacity(N) có thể được truyền một số từ 0 đến 1, hoặc tỷ lệ phần trăm từ 0% đến 100% biểu thị hoàn toàn trong suốt và hoàn toàn mờ đục.

Xem Bút ẩn với Opacity: 0 bởi SitePoint (@SitePoint) trên CodePen.
hide with opacity: 0 by SitePoint (@SitePoint)
on CodePen.

Có rất ít sự khác biệt thực tế giữa hai trong các trình duyệt hiện đại, mặc dù nên sử dụng filter nếu nhiều hiệu ứng được áp dụng cùng một lúc (mờ, tương phản, thang độ xám, v.v.)

Opacity có thể được hoạt hình và cung cấp hiệu suất tuyệt vời, nhưng hãy cảnh giác rằng một yếu tố hoàn toàn trong suốt vẫn còn trên trang và có thể kích hoạt các sự kiện.

Hệ méthiệu ứng
Hỗ trợ trình duyệtTốt, nhưng IE chỉ hỗ trợ opacity 0 đến 1
khả năng tiếp cậnNội dung không đọc nếu 0 hoặc 0% được đặt
Bố cục bị ảnh hưởng?không
yêu cầu kết xuấtthành phần
màn biểu diễnTốt nhất, có thể sử dụng tăng tốc phần cứng
Khung hoạt hình có thể?Vâng
Các sự kiện được kích hoạt khi ẩn?Vâng

Các sự kiện được kích hoạt khi ẩn?

2.

[hidden] {
  display: none;
}
0 Tính minh bạch Alpha

opacity ảnh hưởng đến toàn bộ phần tử, nhưng nó cũng có thể đặt các thuộc tính ____10,

[hidden] {
  display: none;
}
3 và
[hidden] {
  display: none;
}
4 riêng biệt. Áp dụng kênh alpha bằng không bằng cách sử dụng
[hidden] {
  display: none;
}
5 hoặc tương tự hiển thị một mục hoàn toàn trong suốt:
hide with color alpha by SitePoint (@SitePoint)
on CodePen.

Xem Bút ẩn với Color Alpha bởi SitePoint (@SitePoint) trên CodePen.

Mỗi thuộc tính có thể được hoạt hình riêng biệt để tạo hiệu ứng thú vị. Lưu ý rằng tính minh bạch có thể được áp dụng cho các phần tử với nền hình ảnh trừ khi chúng được tạo bằng cách sử dụng

[hidden] {
  display: none;
}
6 hoặc tương tự.

  • Kênh Alpha có thể được đặt bằng:
  • [hidden] {
      display: none;
    }
    
    7: Không thể minh bạch hoàn toàn (không thể giữa các hình ảnh động))
  • [hidden] {
      display: none;
    }
    
    8: Đỏ, Xanh lục, Xanh lam và Alpha
  • [hidden] {
      display: none;
    }
    
    9: Huế, bão hòa, nhẹ và alpha
Hệ méthiệu ứng
Hỗ trợ trình duyệtTốt, nhưng IE chỉ hỗ trợ opacity 0 đến 1
khả năng tiếp cậnNội dung không đọc nếu 0 hoặc 0% được đặt
Bố cục bị ảnh hưởng?không
yêu cầu kết xuấtthành phần
màn biểu diễnTốt nhất, có thể sử dụng tăng tốc phần cứng
Khung hoạt hình có thể?Vâng
Các sự kiện được kích hoạt khi ẩn?Vâng

Các sự kiện được kích hoạt khi ẩn?

2.

[hidden] {
  display: none;
}
0 Tính minh bạch Alpha

opacity ảnh hưởng đến toàn bộ phần tử, nhưng nó cũng có thể đặt các thuộc tính ____10,

[hidden] {
  display: none;
}
3 và
[hidden] {
  display: none;
}
4 riêng biệt. Áp dụng kênh alpha bằng không bằng cách sử dụng
[hidden] {
  display: none;
}
5 hoặc tương tự hiển thị một mục hoàn toàn trong suốt:
hide with transform: scale(0); by SitePoint (@SitePoint)
on CodePen.

Xem Bút ẩn với Color Alpha bởi SitePoint (@SitePoint) trên CodePen.

Hệ méthiệu ứng
Hỗ trợ trình duyệtTốt, nhưng IE chỉ hỗ trợ opacity 0 đến 1
khả năng tiếp cậnNội dung không đọc nếu 0 hoặc 0% được đặt
Bố cục bị ảnh hưởng?không
yêu cầu kết xuấtthành phần
màn biểu diễnTốt nhất, có thể sử dụng tăng tốc phần cứng
Khung hoạt hình có thể?Vâng
Các sự kiện được kích hoạt khi ẩn?không

yêu cầu kết xuất

thành phần

màn biểu diễn
hide with clip-path by SitePoint (@SitePoint)
on CodePen.

prefers-reduced-motion0 cung cấp phạm vi cho các hoạt hình thú vị, mặc dù nó chỉ nên dựa vào các trình duyệt hiện đại.

Hệ méthiệu ứng
Hỗ trợ trình duyệtChỉ dành cho các trình duyệt hiện đại
khả năng tiếp cậnNội dung vẫn được đọc bởi một số ứng dụng
Bố cục bị ảnh hưởng?Không - Kích thước ban đầu vẫn còn
yêu cầu kết xuấtsơn
màn biểu diễnhợp lý
Khung hoạt hình có thể?Vâng, trong các trình duyệt hiện đại
Các sự kiện được kích hoạt khi ẩn?không

5. prefers-reduced-motion4

Thuộc tính prefers-reduced-motion4 có thể được đặt thành prefers-reduced-motion6 hoặc prefers-reduced-motion7 để hiển thị và ẩn một phần tử:

Xem Bút ẩn với khả năng hiển thị: ẩn bởi SitePoint (@SitePoint) trên Codepen.
hide with visibility: hidden by SitePoint (@SitePoint)
on CodePen.

Không gian được sử dụng bởi phần tử vẫn ở vị trí trừ khi giá trị prefers-reduced-motion8 được sử dụng.

Hệ méthiệu ứng
Hỗ trợ trình duyệtChỉ dành cho các trình duyệt hiện đại
khả năng tiếp cậnNội dung vẫn được đọc bởi một số ứng dụng
Bố cục bị ảnh hưởng?Không - Kích thước ban đầu vẫn còn
yêu cầu kết xuấtsơn
màn biểu diễnhợp lý
Khung hoạt hình có thể?không
Các sự kiện được kích hoạt khi ẩn?không

5. prefers-reduced-motion4

Thuộc tính prefers-reduced-motion4 có thể được đặt thành prefers-reduced-motion6 hoặc prefers-reduced-motion7 để hiển thị và ẩn một phần tử:

Xem Bút ẩn với khả năng hiển thị: ẩn bởi SitePoint (@SitePoint) trên Codepen.
hide with display: none by SitePoint (@SitePoint)
on CodePen.

Không gian được sử dụng bởi phần tử vẫn ở vị trí trừ khi giá trị prefers-reduced-motion8 được sử dụng.

Xuất sắc

Hệ méthiệu ứng
Hỗ trợ trình duyệtChỉ dành cho các trình duyệt hiện đại
khả năng tiếp cậnNội dung vẫn được đọc bởi một số ứng dụng
Bố cục bị ảnh hưởng?Không - Kích thước ban đầu vẫn còn
yêu cầu kết xuấtsơn
màn biểu diễnhợp lý
Khung hoạt hình có thể?không
Các sự kiện được kích hoạt khi ẩn?không

5. prefers-reduced-motion4

<p hidden>
  Hidden content
p>

Thuộc tính prefers-reduced-motion4 có thể được đặt thành prefers-reduced-motion6 hoặc prefers-reduced-motion7 để hiển thị và ẩn một phần tử:

[hidden] {
  display: none;
}

Xem Bút ẩn với khả năng hiển thị: ẩn bởi SitePoint (@SitePoint) trên Codepen.

Không gian được sử dụng bởi phần tử vẫn ở vị trí trừ khi giá trị prefers-reduced-motion8 được sử dụng.

Xuất sắc

Nội dung không đọc
hide with position: absolute by SitePoint (@SitePoint)
on CodePen.

Hệ méthiệu ứng
Hỗ trợ trình duyệtKhông, trừ khi prefers-reduced-motion8 được sử dụng
khả năng tiếp cậnthành phần, trừ khi prefers-reduced-motion8 được sử dụng
Bố cục bị ảnh hưởng?Không - Kích thước ban đầu vẫn còn
yêu cầu kết xuấtsơn
màn biểu diễnhợp lý
Khung hoạt hình có thể?Vâng, trong các trình duyệt hiện đại
Các sự kiện được kích hoạt khi ẩn?không

5. prefers-reduced-motion4

Thuộc tính prefers-reduced-motion4 có thể được đặt thành prefers-reduced-motion6 hoặc prefers-reduced-motion7 để hiển thị và ẩn một phần tử:

Xem Bút ẩn với khả năng hiển thị: ẩn bởi SitePoint (@SitePoint) trên Codepen.
hide with an overlay by SitePoint (@SitePoint)
on CodePen.

Không gian được sử dụng bởi phần tử vẫn ở vị trí trừ khi giá trị prefers-reduced-motion8 được sử dụng.

Hệ méthiệu ứng
Hỗ trợ trình duyệtChỉ dành cho các trình duyệt hiện đại
khả năng tiếp cậnthành phần, trừ khi prefers-reduced-motion8 được sử dụng
Bố cục bị ảnh hưởng?tốt
yêu cầu kết xuấtsơn
màn biểu diễnhợp lý
Khung hoạt hình có thể?Không - Kích thước ban đầu vẫn còn
Các sự kiện được kích hoạt khi ẩn?không

5. prefers-reduced-motion4

Thuộc tính prefers-reduced-motion4 có thể được đặt thành prefers-reduced-motion6 hoặc prefers-reduced-motion7 để hiển thị và ẩn một phần tử:

Xem Bút ẩn với khả năng hiển thị: ẩn bởi SitePoint (@SitePoint) trên Codepen.
hide with width or height by SitePoint (@SitePoint)
on CodePen.

Không gian được sử dụng bởi phần tử vẫn ở vị trí trừ khi giá trị prefers-reduced-motion8 được sử dụng.

Hệ méthiệu ứng
Hỗ trợ trình duyệtChỉ dành cho các trình duyệt hiện đại
khả năng tiếp cậnthành phần, trừ khi prefers-reduced-motion8 được sử dụng
Bố cục bị ảnh hưởng?Không - Kích thước ban đầu vẫn còn
yêu cầu kết xuấtsơn
màn biểu diễnhợp lý
Khung hoạt hình có thể?Không - Kích thước ban đầu vẫn còn
Các sự kiện được kích hoạt khi ẩn?không

5. prefers-reduced-motion4

Thuộc tính prefers-reduced-motion4 có thể được đặt thành prefers-reduced-motion6 hoặc prefers-reduced-motion7 để hiển thị và ẩn một phần tử:

Những cách khác nhau để ẩn các yếu tố CSS là gì?

Có các thuộc tính CSS sau đây sử dụng để ẩn một phần tử ...
Vị trí tuyệt đối ..
Color..
Clip-path..
Display..
filter..
Measurements..
Opacity..
Transform..

Làm thế nào để bạn ẩn một kiểu nguyên tố?

Để ẩn một phần tử, hãy đặt thuộc tính Hiển thị kiểu thành không có.tài liệu.getEuityById ("phần tử").Phong cách.set the style display property to “none”. document. getElementById("element"). style.

Thuộc tính CSS nào được sử dụng để ẩn một phần tử?

Thuộc tính CSS hiển thị hiển thị hoặc ẩn một phần tử mà không thay đổi bố cục của tài liệu.Thuộc tính cũng có thể ẩn các hàng hoặc cột trong a.

Làm thế nào để bạn ẩn một phần tử ẩn trực quan?

Đôi khi cần phải ẩn các yếu tố trong một trang web.Cách thông thường là sử dụng CSS (hiển thị: Không có; và khả năng hiển thị: ẩn;) hoặc thuộc tính HTML 5 `Hidden`.Các thuộc tính này ẩn các phần tử không chỉ trên màn hình mà còn cho người dùng đầu đọc màn hình.use CSS ( display:none; and visibility:hidden; ) or the HTML 5 `hidden` attribute. These properties hide elements not only on the screen, but also for screen reader users.