Trình tạo spinner cho nút bằng CSS
Spinner bên trong nút bấm cho khách truy cập biết cú nhấp của họ đã có tác dụng và họ không nên nhấn lại. Hãy tạo một vòng nhỏ, mảnh tại đây, rồi sao chép CSS và đặt nó bên cạnh nhãn của nút.
Cách tạo spinner cho nút bấm
-
1
Dùng kích thước nhỏ
Nhập 16 hoặc 18 vào ô Kích thước (px) để vòng quay vừa với chiều cao chữ trên nút.
-
2
Làm vòng mảnh
Đặt Độ dày là 2 để cung vẫn sắc nét ở kích thước này.
-
3
Chọn màu phù hợp
Chọn Màu cho cung đang chuyển động, ví dụ màu trắng trên nút tối.
-
4
Tăng tốc một chút rồi sao chép
Thử 0,8 giây mỗi vòng, rồi sao chép CSS.
Một ví dụ thực hành
Giả sử bạn có một nút “Lưu” màu xanh đậm với chữ trắng. Trong trình tạo, nhập kích thước 16, độ dày 2, màu #ffffff và tốc độ 0,8. Công cụ sẽ tạo ra:
.loader {
width: 16px;
height: 16px;
border: 2px solid #eee;
border-top-color: #ffffff;
border-radius: 50%;
animation: spin 0.8s linear infinite;
}
@keyframes spin {
to { transform: rotate(360deg); }
}
Track của vòng có màu xám nhạt cố định, nhìn rõ trên nút tối. Nếu bạn muốn track dịu hơn, hãy đổi #eee thành một giá trị bán trong suốt như rgba(255, 255, 255, 0.3) trong CSS đã dán. Màu cung vẫn là màu bạn đã chọn.
Đặt spinner bên trong nút
Đặt phần tử spinner trước nhãn và biến nút thành một hàng flex để chúng nằm trên cùng một dòng với khoảng cách:
<button class="save" type="submit" disabled>
<span class="loader" role="status" aria-label="Đang lưu"></span>
Đang lưu
</button>
.save {
display: inline-flex;
align-items: center;
gap: 8px;
}
Chỉ thêm spinner và trạng thái disabled khi yêu cầu đang chạy. Xóa cả hai khi yêu cầu hoàn tất. Việc vô hiệu hóa nút ngăn gửi trùng lặp; spinner là tín hiệu giải thích lý do.
Kích thước và độ dày cho nút
| Kích thước chữ trên nút | Kích thước spinner | Độ dày |
|---|---|---|
| 14 px | 14 px | 2 px |
| 16 px | 16 đến 18 px | 2 px |
| 18 đến 20 px | 20 đến 24 px | 3 px |
Ghi chú
- Trình tạo chỉ tạo một vòng tròn. Nó không tạo nút bấm, vì vậy kiểu dáng nút vẫn do bạn quyết định.
- Vòng dày hơn một phần tư đường kính sẽ bị lấp đầy và trông như một đĩa, vì vậy hãy dùng giá trị mỏng cho kích thước nhỏ.
- Giữ nhãn bên cạnh spinner. Một spinner không có chữ có thể khó hiểu với một số người dùng.
Tránh làm nhảy bố cục
Nếu spinner xuất hiện và nút đột ngột rộng ra, bố cục sẽ bị xô lệch và vùng nhấp chuột sẽ dịch chuyển. Có hai cách đơn giản để khắc phục. Đặt cho nút một chiều rộng tối thiểu đủ chứa spinner và nhãn dài hơn. Hoặc dành sẵn chỗ cho spinner ngay từ đầu bằng cách hiển thị một ô giữ chỗ trống 16 px trước nhãn. Vì vòng được tạo có chiều rộng và chiều cao cố định theo pixel, nên rất dễ dành đúng khoảng không gian nó cần.
Câu hỏi thường gặp
Khoảng bằng chiều cao chữ trên nút, thường từ 14 đến 20 pixel. Như vậy nút sẽ không bị phình to khi spinner xuất hiện.
Trong hầu hết biểu mẫu thì có. Vô hiệu hóa giúp tránh gửi trùng lặp, và spinner giải thích cho khách truy cập vì sao không có gì khác có thể nhấp được.
Track có màu xám nhạt còn cung là màu bạn chọn. Trên nút sáng, hãy chọn màu cung đậm hơn và đổi màu track trong CSS đã dán.
Không. Trình tạo chỉ xuất CSS của vòng quay. Việc giữ, thay đổi hay ẩn nhãn tùy thuộc vào markup của bạn.
Công cụ liên quan
Bảng tham chiếu ASCII
Bảng ASCII đầy đủ từ 0 đến 127 với giá trị thập phân, thập lục phân, bát phân, nhị phân và ký hiệu tham chiếu ký tự số HTML, gồm NUL, LF và DEL.
Chuyển đổi từ RGB sang CMYK
Chuyển màu RGB thành phần trăm mực CMYK bằng công thức tiêu chuẩn. Xem trước tức thì và các giá trị C/M/Y/K. Đây là phép xấp xỉ toán học, không phải chuyển đổi có quản lý màu.
Công cụ tìm tên màu
Tìm màu CSS có tên tiêu chuẩn gần nhất với giá trị HEX, RGB hoặc HSL bằng độ chênh CIEDE2000.
Chuyển đổi HTML sang BBCode
Chuyển đổi các đoạn mã HTML thành BBCode dành cho phpBB, vBulletin và các phần mềm diễn đàn khác không hỗ trợ định dạng HTML thô.
Bộ chuyển đổi ASCII sang nhị phân
Chuyển bất kỳ chuỗi ASCII nào sang biểu diễn nhị phân. Mỗi ký tự thành tám bit, phân tách bằng khoảng trắng, sẵn để dán vào trace giao thức hoặc bài tập.
Trình giải mã mã JavaScript (JavaScript Deobfuscator)
Giải mã mã JavaScript đã được rút gọn hoặc nén bằng cách đổi tên biến, giải mã chuỗi và mảng, đảo ngược cấu trúc dòng điều khiển và làm đẹp mã.
Công cụ này có phiên bản bằng các ngôn ngữ khác
- مولّد CSS لدوّامة الزر [AR]
- ボタン用スピナー CSS ジェネレーター [JA]
- CSS-Spinner für Buttons Generator [DE]
- Generator för spinner i knappar i CSS [SV]
- Gerador de CSS de spinner para botão [PT]
- 버튼 스피너 CSS 생성기 [KO]
- Générateur de CSS pour spinner de bouton [FR]
- CSS-spinner voor knoppen generator [NL]
- เครื่องมือสร้างสปินเนอร์ในปุ่ม CSS [TH]
- Generador de CSS de spinner para botones [ES]
- Generator spinera na przycisku w CSS [PL]
- Generator CSS Spinner untuk Tombol [ID]
- Генератор спиннера для кнопки в CSS [RU]
- Buton İçin CSS Spinner Oluşturucu [TR]
- 按钮加载动画 CSS 生成器 [ZH]
- Spinner on Button CSS Generator [EN]
- Generatore di CSS per spinner nei pulsanti [IT]