Calculator Tools Calculator Tools
Create

Body Mass Index Calculator

Sep 15, 2023

About this app

Calculate your Body Mass Index (BMI)

Body Mass Index Calculator Calculate Again Underweight Normal Weight Overweight Obese Note: BMI is a useful measure for adults. It may not be accurate for athletes, elderly, or children.

Related apps

Put this on your site

Source

                    <html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">

<title>Body Mass Index Calculator</title>
<meta name="description" content="Calculate your Body Mass Index (BMI)">
<meta name="keywords" content="body mass index, BMI, calculator">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">

<style>
.horizontal-scale {
display: flex;
flex-direction: column;
justify-content: space-between;
height: 50px;
width: 300px;
background-color: #f5f5f5;
margin-right: 20px;
}

.scale-section {
height: 75px;
width: 300px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid black;
}

.scale-section.underweight {
color: lightblue;
}

.scale-section.normal-weight {
color: green;
}

.scale-section.overweight {
color: orange;
}

.scale-section.obese {
color: red;
}

.legend {
display: flex;
justify-content: space-between;
margin-top: 10px;
}

.legend-item {
display: flex;
align-items: center;
}

.legend-color {
height: 20px;
width: 20px;
margin-right: 5px;
}

.note {
font-size: 12px;
margin-top: 16px;
}

#calculate-again {
margin-top: 10px;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<iframe src="https://calculators.tools/prompt/d45379e75edc4704cebdd608cfda8c2a/iframe/" width="100%" height="100%" frameborder="0" scrolling="yes" allowfullscreen="true" webkitallowfullscreen="true" mozallowfullscreen="true" allow="midi; geolocation; microphone; camera; display-capture; encrypted-media; clipboard-read; clipboard-write; notifications; payment-handler; persistent-storage; background-sync; ambient-light-sensor; accessibility-events;" sandbox="allow-modals allow-forms allow-scripts allow-same-origin allow-popups allow-downloads allow-presentation allow-pointer-lock allow-orientation-lock" allowfullscreen="true" allowpaymentrequest="true" frameborder="0"></iframe>

<button id="calculate-again" class="btn btn-primary mt-3">Calculate Again</button>

<div class="horizontal-scale">
<div class="scale-section underweight"><span><strong>Underweight</strong></span></div>
<div class="scale-section normal-weight"><span><strong>Normal Weight</strong></span></div>
<div class="scale-section overweight"><span><strong>Overweight</strong></span></div>
<div class="scale-section obese"><span><strong>Obese</strong></span></div>
</div>

<div class="note">Note: BMI is a useful measure for adults. It may not be accurate for athletes, elderly, or children.</div>
</div>

<script type="text/javascript">
try {
document.addEventListener("DOMContentLoaded", function() {
// Get the user's BMI value
var bmiValue = parseFloat(document.getElementById('bmi-value').innerText);

if (bmiValue < 18.5) {
document.querySelector('.scale-section.underweight').classList.add('active');
} else if (bmiValue >= 18.5 && bmiValue < 25) {
document.querySelector('.scale-section.normal-weight').classList.add('active');
} else if (bmiValue >= 25 && bmiValue < 30) {
document.querySelector('.scale-section.overweight').classList.add('active');
} else {
document.querySelector('.scale-section.obese').classList.add('active');
}

$("#calculate-again").click(function() {
// Reload the page to start the calculator from the beginning
location.reload();
});
});
} catch (error) {
throw error;
}

// auto-resize iframe
var observer = new MutationObserver(
function() {
window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight}, "*");
}
);
window.addEventListener('load', function() {
observer.observe(document.body, {attributes: true, childList: true, subtree: true});
window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight}, "*");
});
</script>
</body>
</html>