Khi nói đến việc tạo biểu mẫu trên trang web, khả năng truy cập và thiết kế phải đi đôi với nhau. Lý tưởng nhất là mọi trường nhập phải có nhãn liên quan và trình giữ chỗ, nếu cần. Tuy nhiên, từ góc độ thiết kế, điều này có thể khiến một biểu mẫu trông khá nặng văn bản
Nhãn dưới dạng trình giữ chỗ, đôi khi được gọi là nhãn nổi, là một lựa chọn thiết kế phổ biến để tạo biểu mẫu tối giản và dễ tiếp cận. Phương pháp này cũng thường được sử dụng trong các hệ thống thiết kế phổ biến như Bootstrap và Material Design [hiển thị bên dưới]
Nhãn nổi Bootstrap
Tùy chọn nhãn nổi trên biểu mẫu Material Design
Trong hướng dẫn này, chúng tôi sẽ tạo lại nhãn nổi được sử dụng trong các trường văn bản Thiết kế Vật liệu bằng cách sử dụng CSS và vanilla JavaScript
Vật liệu thiết kế nhãn nổi
Đây là kết quả cuối cùng trông như thế nào
Bắt đầu với đánh dấu HTML biểu mẫu
Đầu tiên, chúng tôi tạo đánh dấu cho biểu mẫu Thiết kế Vật liệu của chúng tôi bao gồm nhãn và trường văn bản đầu vào.
Chúng tôi sẽ không thực sự sử dụng thư viện Thiết kế Vật liệu để đánh dấu hoặc tạo kiểu, thay vào đó chúng tôi sẽ tự tạo lại giao diện và hành vi
1
2
3
First Name
4
5
Điều quan trọng là liên kết nhãn với các trường đầu vào có liên quan của chúng bằng cách sử dụng thuộc tính
2
23 và 2
24 của đầu vào. Điều này được sử dụng bởi trình đọc màn hình để truyền đạt các chi tiết của biểu mẫuSử dụng , chúng ta có thể thấy cách các nhãn và đầu vào được liên kết trong phần đánh dấu biểu mẫu ở trên
Mẫu thiết kế vật liệu CSS
Kiểu dáng quan trọng nhất cho nhãn nổi là làm cho nhãn được định vị tuyệt đối bên trong phần tử cha tương đối. Chúng tôi muốn có thể di chuyển nhãn của mình xung quanh vùng chứa đầu vào mà không làm gián đoạn luồng các phần tử
1
12
1_______3_______4_______
54
1_______75
1_______92
02
12
22
32
42
52
62
72
8_______2_______9_______1_______7Nhãn nổi trên tiêu điểm
Chúng tôi cũng muốn làm nổi nhãn bất cứ khi nào người dùng nhấp vào đầu vào. Chúng ta có thể làm điều này bằng cách sử dụng bộ chọn
2
25 và 2
26. Khi đầu vào được tập trung vào, chúng tôi thay đổi vị trí, kích thước và màu sắc của nhãn1
22
4_______4_______
64
7Ghi chú. Điều này hoạt động vì nhãn là phần tử tiếp theo ngay sau trường đầu vào. Bộ chọn cộng nhắm mục tiêu phần tử ngay lập tức tiếp theo để nó không hoạt động nếu nhãn được đặt trước đầu vào hoặc phần tử khác được đặt ở giữa hai phần tử
Nhãn nổi với đầu vào của người dùng
Một tính năng khác của nhãn nổi là nó vẫn nổi nếu đầu vào có giá trị, ngay cả khi người dùng không còn tập trung vào đầu vào
Chúng ta có thể đạt được điều này bằng cách sử dụng bộ chọn CSS
2
27 và thuộc tính 2
28 trong phần đánh dấu HTMLChúng tôi sử dụng bộ chọn hợp lệ cho các đầu vào bắt buộc để phát hiện xem đầu vào có giá trị hay không.
1
3
0_______2_______3
2_______4_______
44
7Với điều này, nhãn vẫn nổi khi đầu vào được tập trung hoặc có giá trị
Thật không may, có một số nhược điểm khi sử dụng bộ chọn hợp lệ. Ví dụ: nếu bộ chọn hợp lệ được sử dụng cho mục nhập email, thì mục nhập được coi là không hợp lệ nếu giá trị không ở định dạng email.
ôiChúng ta có thể giải quyết vấn đề này bằng một chút JavaScript
Thêm Trình xử lý sự kiện JavaScript
Chúng tôi sử dụng JavaScript để phát hiện xem đầu vào có giá trị hay không bất cứ khi nào người dùng điều hướng khỏi nó
1
3
82
3
First Name
14
___ First Name
35
5_______5
9 First Name
72
1 First Name
92
34
12
54
32
74
5_______2_______9_______6_______7Bất cứ khi nào đầu vào mất tiêu điểm, chúng tôi sẽ kiểm tra xem nó có chứa giá trị không. Nếu có, chúng tôi thêm lớp
2
29, nếu không, chúng tôi xóa lớp hợp lệ. Chúng tôi có thể cập nhật kiểu dáng CSS của mình để làm nổi nhãn với lớp 2
291
3
02
13
44
7Với điều này, chúng tôi đã triển khai thiết kế nhãn nổi
Đây là CSS hoàn chỉnh để tạo lại giao diện biểu mẫu Thiết kế Vật liệu
1
72
93
5
14
5
35
5
5
95
72
15
92
3
72
52
7
42
9
6
75
3
9
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
7
17
18
1
20
21
22
3
24
25
26
5
28
29
30
7
32________ Nhãn nổi thiết kế Material Design của bạn đã hoàn tất
Như với hầu hết các mẫu thiết kế, các nhãn nổi đã gây ra nhiều cuộc tranh luận. Miễn là bạn làm cho biểu mẫu của mình có thể truy cập và dễ sử dụng, bạn có thể sử dụng bất kỳ mẫu thiết kế nào bạn thích. Hy vọng, hướng dẫn này đóng vai trò là hướng dẫn hữu ích nếu bạn chọn sử dụng nhãn nổi
Thêm hướng dẫn thiết kế biểu mẫu
Tìm hiểu thêm về các mẫu thiết kế biểu mẫu, nhãn nổi, biểu mẫu Material Design và khả năng truy cập biểu mẫu tại đây trên Tuts+
Nhãn nổi là gì?
Nhãn nổi hiển thị loại đầu vào mà trường yêu cầu . Mỗi Trường văn bản và Chọn phải có nhãn, ngoại trừ các trường văn bản có chiều rộng đầy đủ, thay vào đó sử dụng thuộc tính giữ chỗ của đầu vào. Nhãn được căn chỉnh với dòng đầu vào và luôn hiển thị.
Làm cách nào để thả nổi trình giữ chỗ trong HTML?
Ví dụ Trình giữ chỗ đầu vào nổi lên đầu
Các nhãn nổi có thể truy cập được không?
bootstrap dạng nổi là gì?
"form-floating" hoạt động để bật nhãn nổi với các trường biểu mẫu văn bản trong phiên bản Bootstrap 5 . Nhãn nổi bootstrap 5 là nhãn văn bản hiển thị ở kích thước phông chữ đầy đủ trong trường nhập liệu. Nhãn "nổi" phía trên trường nhập khi tương tác, cho phép người dùng nhập giá trị.