Body Mass Index Calculator
About this app
Calculate your Body Mass Index (BMI) using this accurate and versatile calculator.
Body Mass Index Calculator Body Mass Index Calculator Weight (kg) Height (cm) Unit Metric Imperial Calculate
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) using this accurate and versatile calculator.">
<meta name="keywords" content="body mass index, bmi calculator, health, weight, height">
<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">
<link href="https://fonts.googleapis.com/css?family=Roboto:400,700&display=swap" rel="stylesheet">
<script type="text/javascript">
try {
// App Javascript Goes Here. Place your entire script content inside the try block for error handling.
document.addEventListener("DOMContentLoaded", function() {
// DOM is ready, perform calculations
function calculateBMI() {
const weight = parseFloat($("#weight").val());
const height = parseFloat($("#height").val());
if (isNaN(weight) || isNaN(height)) {
$("#bmi-result").text("Please enter valid weight and height values.");
return;
}
const unit = $("#unit").val();
let bmi = 0;
if (unit === "metric") {
bmi = weight / Math.pow(height / 100, 2);
} else {
bmi = (weight / Math.pow(height, 2)) * 703;
}
$("#bmi-result").text(`Your BMI is ${bmi.toFixed(2)}`);
}
// Bind event handlers
$("#calculate-button").click(calculateBMI);
// Load default values
$("#unit").change(function() {
if ($(this).val() === "metric") {
$("#weight-label").text("Weight (kg)");
$("#height-label").text("Height (cm)");
} else {
$("#weight-label").text("Weight (lbs)");
$("#height-label").text("Height (ft/in)");
}
});
});
} catch (error) {
// This will throw the error to the parent window.
throw error;
}
</script>
<style>
body {
font-family: 'Roboto', sans-serif;
background-color: #f5f5f5;
}
.container {
max-width: 400px;
margin: 0 auto;
padding: 20px;
background-color: #fff;
border-radius: 10px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
h1 {
text-align: center;
margin-bottom: 30px;
color: #333;
}
.form-group {
margin-bottom: 20px;
}
label {
display: block;
margin-bottom: 5px;
font-weight: bold;
color: #555;
}
input[type="number"] {
width: 100%;
padding: 10px;
border-radius: 5px;
border: 1px solid #ccc;
outline: none;
}
select {
width: 100%;
padding: 10px;
border-radius: 5px;
border: 1px solid #ccc;
outline: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 16 16'%3E%3Cpath fill='%23555555' d='M16 2.898L8 10.828 0 2.898.586 2.312l7.414 7.414L15.414 2.312z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 10px center;
background-size: 8px 8px;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
button {
width: 100%;
padding: 10px;
border-radius: 5px;
border: none;
background-color: #333;
color: #fff;
font-weight: bold;
cursor: pointer;
}
#bmi-result {
margin-top: 20px;
text-align: center;
font-weight: bold;
color: #333;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1>Body Mass Index Calculator</h1>
<div class="form-group">
<label for="weight" id="weight-label">Weight (kg)</label>
<input type="number" id="weight" placeholder="Enter weight">
</div>
<div class="form-group">
<label for="height" id="height-label">Height (cm)</label>
<input type="number" id="height" placeholder="Enter height">
</div>
<div class="form-group">
<label for="unit">Unit</label>
<select id="unit">
<option value="metric">Metric</option>
<option value="imperial">Imperial</option>
</select>
</div>
<button id="calculate-button">Calculate</button>
<div id="bmi-result"></div>
</div>
</body>
</html>
NEW APPS
These are apps made by the community!