Chuyển đổi mã màu: HEX, RGB, HSL và CMYK

Gõ hoặc dán một màu ở bất kỳ định dạng nào, mọi định dạng khác sẽ cập nhật theo. Kiểm tra độ tương phản với nền, tạo bảng màu từ nó, hoặc lấy màu trực tiếp từ một bức ảnh.

Màu

#3B82F6 —
Ô nào cũng nhận mọi định dạng: dán rgb(), mã HEX hay tên màu vào ô nào tiện nhất.
Điều chỉnh

Lấy màu từ ảnh

Kiểm tra độ tương phản (WCAG 2)

Màu của bạn là
So với

Chữ thường cỡ 16px. Con cáo nâu nhanh nhẹn nhảy qua con chó lười.

Chữ lớn, 24px đậm

3.68:1 tỷ lệ tương phản
AA chữ thường4.5:1—
AA chữ lớn3:1—
AAA chữ thường7:1—
AAA chữ lớn4.5:1—
Biểu tượng và viền giao diện3:1—
Sắc độ gần nhất đạt chuẩn (cùng tông màu)

Bảng màu

Bấm vào một ô màu để sao chép mã HEX. Dùng sẽ đặt nó làm màu chính.
Xuất dạng
Tải về Tải PNG

Cách đổi HEX sang RGB (và ngược lại)

Công cụ chuyển đổi màu này đổi mã HEX sang RGB, HSL, HSV, CMYK và OKLCH ngay khi bạn gõ, và chiều ngược lại cũng được: dán rgb(255, 99, 71) vào ô bất kỳ, bạn được #FF6347. Ô nào cũng nhận mọi định dạng, nên bạn không phải đi tìm đúng ô.

Nếu muốn tự tính tay, mã HEX chỉ là ba con số viết ở hệ cơ số 16. Lấy #3B82F6, tách thành từng cặp rồi đổi từng cặp:

3B → 3×16 + 11 = 59
82 → 8×16 + 2 = 130
F6 → 15×16 + 6 = 246
#3B82F6 = rgb(59, 130, 246)

Đổi từ RGB sang HEX thì làm ngược lại. Chia mỗi kênh cho 16: phần nguyên là chữ số thứ nhất, phần dư là chữ số thứ hai. 255 chia 16 được 15 dư 15, nên là FF. 99 được 6 dư 3, nên là 63. Đó là lý do màu đỏ cà chua rgb(255, 99, 71) thành #FF6347.

Các mã màu thường gặp ở dạng HEX, RGB và HSL

Những mã này đáng để nhận ra ngay khi nhìn. Tất cả đều là tên màu CSS hợp lệ, và công cụ hiển thị tên gần nhất cho bất kỳ màu nào bạn nhập (#3B82F6 gần nhất với dodgerblue, dù không giống hệt).

TênHEXRGBHSL
white#FFFFFF255, 255, 2550, 0%, 100%
black#0000000, 0, 00, 0%, 0%
red#FF0000255, 0, 00, 100%, 50%
tomato#FF6347255, 99, 719, 100%, 64%
gold#FFD700255, 215, 051, 100%, 50%
teal#0080800, 128, 128180, 100%, 25%
navy#0000800, 0, 128240, 100%, 25%
rebeccapurple#663399102, 51, 153270, 50%, 40%

Mã HEX ngắn, dài và có độ trong suốt

Mã HEX có bốn độ dài. Ba chữ số là dạng viết tắt, mỗi chữ số được nhân đôi, nên #F60 nghĩa là #FF6600. Sáu chữ số là dạng thông thường. Tám chữ số thêm kênh alpha ở cuối: #3B82F680 là cùng màu xanh đó ở mức 128 trên 255, tức độ mờ khoảng 50%. Bốn chữ số là dạng viết tắt của kiểu đó. Trình duyệt đã hiểu cả bốn dạng từ lâu, nhưng một số ứng dụng thiết kế và trình đọc email vẫn chỉ nhận sáu chữ số, nên khi không chắc, hãy dán mã sáu chữ số và đặt độ mờ riêng.

Nên dùng định dạng nào?

Kiểm tra độ tương phản màu: thế nào là đạt WCAG?

WCAG 2 so sánh độ sáng tương đối của chữ và nền rồi biểu diễn thành tỷ lệ từ 1:1 (giống hệt nhau) đến 21:1 (đen trên trắng). Các ngưỡng là cố định:

MứcChữ thườngChữ lớn (24px, hoặc 18,66px đậm)
AA4,5:13:1
AAA7:14,5:1

Biểu tượng, viền ô nhập và vòng focus cần 3:1 theo WCAG 2.1. Đây là kết quả của một số màu thật khi làm chữ trên nền trắng:

Màu chữ trên #FFFFFFTỷ lệKết quả
#9494943,03:1Chỉ dùng cho chữ lớn
#7777774,48:1Trượt AA cho chữ nội dung, chỉ thiếu một chút
#7676764,54:1Đạt AA
#5959597,00:1Đạt AAA
#3B82F63,68:1Chỉ dùng cho chữ lớn và nút
#0080804,77:1Đạt AA

Dòng #777777 là cái bẫy kinh điển. Nó trông giống hệt #767676, và công cụ kiểm tra nào hiển thị một chữ số thập phân sẽ ghi 4,5, nhưng quy tắc là "ít nhất 4,5" và 4,48 thì không đạt. Công cụ này không bao giờ làm tròn một tỷ lệ trượt lên thành ngưỡng.

Khi một màu không đạt, công cụ tìm sắc độ gần nhất cùng tông màu mà đạt. Với #3B82F6 trên nền trắng, nó gợi ý #1E6FF5 cho AA (4,52:1) và #0950C5 cho AAA (7,08:1). Bấm Dùng để nạp màu đó, hoặc sao chép thẳng vào file CSS. Các màu vàng và cam tươi thường phải tối đi rất nhiều mới dùng được làm chữ trên nền trắng; với những màu này, hãy giữ màu tươi cho nền và đặt chữ tối lên trên.

Tạo bảng màu và lấy màu từ ảnh

Bảng màu tạo thang sắc độ sáng và tối từ 50 đến 950 (cách đặt tên của Tailwind), cùng các bộ màu bổ sung, tương đồng, bộ ba, bổ sung tách, hình vuông và đơn sắc. Bấm vào ô màu bất kỳ để sao chép, rồi xuất cả bộ dưới dạng biến CSS, biến SCSS, JSON hoặc khối màu Tailwind, hoặc tải một dải PNG để chèn vào slide hay gửi cho khách hàng.

Để lấy đúng màu từ logo hay ảnh chụp, hãy nạp ảnh và chạm vào điểm cần lấy. Một điểm ảnh trong file JPG có thể lệch vài sắc độ so với màu bạn thấy do nhiễu nén, nên với ảnh chụp hãy chuyển sang lấy trung bình 3×3 hoặc 5×5. Trên Chrome và Edge, nút Lấy màu trên màn hình có thể lấy màu ở bất kỳ đâu trên màn hình, kể cả các cửa sổ khác. Không có gì được tải lên; ảnh được đọc ngay trong trình duyệt của bạn.

Câu hỏi thường gặp

Đổi HEX sang RGB thế nào?

Tách sáu chữ số thành ba cặp và đổi mỗi cặp từ hệ 16 thành một số từ 0 đến 255. #3B82F6 thành 3B = 59, 82 = 130 và F6 = 246, nên giá trị RGB là rgb(59, 130, 246).

Đổi RGB sang HEX thế nào?

Viết mỗi kênh thành số thập lục phân hai chữ số rồi ghép lại sau dấu #. rgb(255, 99, 71) cho FF, 63 và 47, nên mã HEX là #FF6347, chính là màu CSS tomato.

Cần tỷ lệ tương phản bao nhiêu để đạt WCAG AA?

Chữ thường cần ít nhất 4,5:1 và chữ lớn (24px, hoặc 18,66px đậm) cần 3:1. Màu xám #767676 trên nền trắng là 4,54:1, màu xám nhạt nhất vẫn đạt cho chữ nội dung.

Mã màu hex 8 chữ số nghĩa là gì?

Hai chữ số cuối là kênh alpha (độ mờ). #3B82F680 là cùng màu xanh đó với độ mờ 128/255, khoảng 50%, tương đương rgba(59, 130, 246, 0.5) trong CSS.

Mã hex 3 chữ số như #F60 nghĩa là gì?

Mỗi chữ số được nhân đôi, nên #F60 là #FF6600. Dạng rút gọn chỉ dùng được khi hai chữ số trong mỗi cặp giống nhau, vì thế #3B82F6 không có dạng 3 chữ số.

Giá trị CMYK có đủ chính xác để in không?

Nó là điểm khởi đầu, không phải bản in thử. Công cụ dùng công thức chuẩn, nên #3B82F6 thành cmyk(76%, 47%, 0%, 4%), nhưng tỷ lệ mực thực tế phụ thuộc vào hồ sơ màu của máy in và giấy, nên hãy hỏi nhà in giá trị của họ.

Làm sao lấy mã HEX của một màu trong ảnh?

Nạp ảnh vào khung phía trên và chạm vào điểm bạn muốn; công cụ đọc điểm ảnh đó. Với ảnh chụp, hãy chuyển sang lấy trung bình 3×3 hoặc 5×5, vì một điểm ảnh đơn lẻ thường nhiễu hơn màu bạn nhìn thấy.

HSL và HSV khác nhau thế nào?

Cả hai đều bắt đầu bằng cùng một sắc độ, nhưng độ sáng 100% trong HSL luôn là màu trắng, còn giá trị 100% trong HSV là phiên bản sáng nhất của màu đó. Màu đỏ thuần là hsl(0, 100%, 50%) và hsv(0, 100%, 100%).