.tnt{--blue:#2B4CFE;line-height:1.7;color:#334155;font-size:17px}
.tnt *{box-sizing:border-box}
.tnt-tool{background:#fff;border:1px solid #E2E8F0;border-radius:16px;padding:26px;box-shadow:0 4px 20px rgba(15,23,42,.07);margin:0 0 26px}
.tnt-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.tnt-tab{background:#F1F5F9;border:1px solid #CBD5E1;border-radius:999px;padding:8px 18px;font-weight:600;font-size:14px;cursor:pointer;color:#0F172A}
.tnt-tab.on{background:var(--blue);color:#fff;border-color:var(--blue)}
.tnt-conv{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.tnt-conv input{font-size:20px;padding:12px 14px;border:2px solid #CBD5E1;border-radius:10px;width:160px;color:#0F172A}
.tnt-conv select{font-size:16px;padding:12px;border:2px solid #CBD5E1;border-radius:10px;color:#0F172A;background:#fff}
.tnt-eq{font-size:22px;color:#94A3B8;font-weight:700}
.tnt h2{font-size:1.5rem;font-weight:800;color:#0F172A;margin:34px 0 14px;padding-left:14px;border-left:5px solid var(--blue)}
.tnt h3{font-size:1.1rem;color:#0F172A;margin:18px 0 6px}.tnt a{color:#059669;font-weight:600}
.tnt-cta{margin:26px 0;padding:22px 26px;background:linear-gradient(135deg,#0B1230,#1B2247);color:#fff;border-radius:14px}
.tnt-cta b{color:#fff;font-size:18px}.tnt-cta p{color:rgba(255,255,255,.85);margin:6px 0 12px}
.tnt-cta a{display:inline-block;background:#2B4CFE;color:#fff!important;padding:9px 20px;border-radius:999px;font-weight:700;font-size:14px}
@media(max-width:560px){.tnt-conv input,.tnt-conv select{width:100%}}
Công cụ đổi đơn vị online miễn phí: chuyển đổi nhanh độ dài, khối lượng, nhiệt độ và dung lượng dữ liệu ngay trên trình duyệt. Nhập số ở một ô, ô còn lại tự cập nhật tức thì.
=
Cách dùng công cụ đổi đơn vị
Chọn nhóm đơn vị (độ dài, khối lượng, nhiệt độ, dữ liệu), chọn đơn vị nguồn và đích, rồi nhập giá trị. Kết quả hiển thị ngay. Công cụ chạy hoàn toàn trên trình duyệt.
Các nhóm đơn vị hỗ trợ
Độ dài (mm, cm, m, km, inch, ft, mile), khối lượng (mg, g, kg, tấn, lb, oz), nhiệt độ (C, F, K) và dung lượng dữ liệu (B, KB, MB, GB, TB). Cần thêm công cụ khác? Xem bộ công cụ online miễn phí của TND.
TND cung cấp Windows, Office, Adobe bản quyền, hoá đơn VAT đầy đủ.
Câu hỏi thường gặp
Công cụ đổi đơn vị có chính xác không?
Có. Các hệ số quy đổi theo chuẩn quốc tế (SI). Kết quả làm tròn để dễ đọc nhưng đủ chính xác cho nhu cầu thông thường.
Có cần kết nối mạng không?
Sau khi trang đã tải, công cụ tính toán cục bộ trên trình duyệt, không cần gửi dữ liệu đi.
{"@context":"https://schema.org","@type":"FAQPage","mainEntity":[{"@type":"Question","name":"Công cụ đổi đơn vị có chính xác không?","acceptedAnswer":{"@type":"Answer","text":"Có. Các hệ số quy đổi theo chuẩn quốc tế SI. Kết quả làm tròn để dễ đọc nhưng đủ chính xác cho nhu cầu thông thường."}},{"@type":"Question","name":"Có cần kết nối mạng không?","acceptedAnswer":{"@type":"Answer","text":"Sau khi trang đã tải, công cụ tính toán cục bộ trên trình duyệt, không cần gửi dữ liệu đi."}}]}
(function(){
var U={length:{base:'m',u:{mm:0.001,cm:0.01,m:1,km:1000,inch:0.0254,ft:0.3048,mile:1609.344}},
mass:{base:'kg',u:{mg:1e-6,g:0.001,kg:1,'tấn':1000,lb:0.45359237,oz:0.0283495231}},
data:{base:'B',u:{B:1,KB:1024,MB:1048576,GB:1073741824,TB:1099511627776}}};
var A=document.getElementById('tndA'),B=document.getElementById('tndB'),AU=document.getElementById('tndAU'),BU=document.getElementById('tndBU'),cat='length';
function opts(sel,keys,def){sel.innerHTML='';keys.forEach(function(k){var o=document.createElement('option');o.value=k;o.textContent=k;if(k===def)o.selected=true;sel.appendChild(o);});}
function fill(){if(cat==='temp'){opts(AU,['C','F','K'],'C');opts(BU,['C','F','K'],'F');}else{var keys=Object.keys(U[cat].u);opts(AU,keys,keys[0]);opts(BU,keys,keys[2]||keys[1]||keys[0]);}}
function rnd(x){if(!isFinite(x))return '';return Math.abs(x)>=1e6||(Math.abs(x)<1e-4&&x!==0)?x.toExponential(4):Math.round(x*1e6)/1e6;}
function tC(v,u){return u==='C'?v:u==='F'?(v-32)*5/9:v-273.15;}
function fC(c,u){return u==='C'?c:u==='F'?c*9/5+32:c+273.15;}
function conv(from){var src=from==='A'?A:B,dst=from==='A'?B:A,su=from==='A'?AU:BU,du=from==='A'?BU:AU,v=parseFloat(src.value);if(isNaN(v)){dst.value='';return;}
if(cat==='temp'){dst.value=rnd(fC(tC(v,su.value),du.value));}else{var base=v*U[cat].u[su.value];dst.value=rnd(base/U[cat].u[du.value]);}}
document.getElementById('tndTabs').addEventListener('click',function(e){if(!e.target.dataset.k)return;cat=e.target.dataset.k;[].forEach.call(this.children,function(b){b.classList.toggle('on',b.dataset.k===cat);});fill();conv('A');});
A.addEventListener('input',function(){conv('A');});B.addEventListener('input',function(){conv('B');});
AU.addEventListener('change',function(){conv('A');});BU.addEventListener('change',function(){conv('A');});
fill();conv('A');
})();
