首页 web前端 css教程 建立一个体重转换器网站

建立一个体重转换器网站

Aug 18, 2024 am 06:32 AM

Build a Weight Converter Website

介绍

各位开发者大家好!我很高兴向大家介绍我的最新项目:重量转换器。这个项目是一个简单而实用的工具,可以帮助用户将体重从磅转换为公斤。这是练习 JavaScript 的绝佳方法,特别是在处理用户输入、计算和 DOM 操作方面。无论您是 JavaScript 新手还是正在寻找一个有趣、快速的项目,这个权重转换器都是您的完美选择。

项目概况

重量转换器是一个网络应用程序,允许用户输入以磅为单位的重量并获得以千克为单位的等效重量。该项目展示了如何使用表单输入、在 JavaScript 中执行计算以及根据用户输入动态更新网页内容。

特征

  • 用户输入处理:接受以磅为单位的用户输入并将其转换为千克。
  • 验证:显示无效输入的错误消息(例如,非数字或负值)。
  • 实时计算:随着用户输入立即更新转换结果。
  • 响应式设计:布局设计为响应式,可在不同设备上提供一致的体验。

使用的技术

  • HTML:构建权重转换器界面。
  • CSS:设置转换器的样式,包括响应式布局和错误处理。
  • JavaScript:管理用户输入验证、权重转换和 DOM 更新。

项目结构

以下是项目结构的快速浏览:

Weight-Converter/
├── index.html
├── styles.css
└── script.js
  • index.html:包含权重转换器的 HTML 结构。
  • styles.css:包括布局和响应式设计的 CSS 样式。
  • script.js:处理权重转换和输入验证的逻辑。

安装

要开始该项目,请按照以下步骤操作:

  1. 克隆存储库

    git clone https://github.com/abhishekgurjar-in/Weight-Converter.git
    
  2. 打开项目目录:

    cd Weight-Converter
    
  3. 运行项目:

    • 在网络浏览器中打开index.html文件以使用权重转换器。

用法

  1. 在网络浏览器中打开网站
  2. 在输入字段中输入重量(以磅为单位)
  3. 查看页面上显示的转换后的重量(以千克为单位)。如果输入无效,将会出现错误消息。

代码说明

超文本标记语言

index.html 文件设置了权重转换器的结构,包括输入字段和结果显示。这是一个片段:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Weight Converter</title>
    <link rel="stylesheet" href="./style.css" />
    <script src="./script.js" defer></script>
  </head>
  <body>
    <div class="container">
      <h1>Weight Converter</h1>
      <label for="input">Pounds</label>
      <input
        type="number"
        id="input"
        class="input"
        step="0.1"
        placeholder="Enter number"
      />
      <p>Your weight in kg is: <span id="result"></span></p>
      <p class="error" id="error"></p>
    </div>
    <div class="footer">
      <p>Made with ❤️ by Abhishek Gurjar</p>
    </div>
  </body>
</html>

CSS

styles.css 文件设置权重转换器的样式,包括输入字段、错误消息和布局。以下是一些关键样式:

body {
    margin: 0;
    background-color: black;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    font-family: 'Courier New', Courier, monospace;
    color: white;
  }

  .container {
    background: rgba(141, 133, 133, 0.632);
    padding: 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
    width: 85%;
    max-width: 450px;
    margin-bottom: 200px;
  }

  .input-container {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 700;
  }

  .input {
    padding: 10px;
    width: 70%;
    background: rgb(255, 253, 253);
    border-color: rgba(0, 0, 0, 0.5);
    font-size: 18px;
    border-radius: 10px;
    color: rgb(0, 0, 0);
    outline: none;
  }

  .error {
    color: red;
  }

  #result {
    color: rgb(0, 255, 0);
  }

JavaScript

script.js 文件管理转换逻辑、输入验证和更新 DOM。这是一个片段:

const inputEl = document.getElementById("input");
const errorEl = document.getElementById("error");
const resultEl = document.getElementById("result");
let errorTime;
let resultTime;

function updateResults() {
  if (inputEl.value <= 0 || isNaN(inputEl.value)) {
    errorEl.innerText = "Please enter a valid number!";
    clearTimeout(errorTime);
    errorTime = setTimeout(() => {
      errorEl.innerText = "";
      inputEl.value = "";
    }, 2000);
  } else {
    resultEl.innerText = (+inputEl.value / 2.2).toFixed(2);
    clearTimeout(resultTime);
    resultTime = setTimeout(() => {
      resultEl.innerText = "";
      inputEl.value = "";
    }, 10000);
  }
}

inputEl.addEventListener("input", updateResults);

现场演示

您可以在此处查看重量转换器的现场演示。

结论

构建这个权重转换器是一个令人愉快的项目,它让我能够探索 JavaScript 在处理实时输入验证和计算方面的潜力。我希望这个项目能够激励您创建类似的工具,使日常任务变得更加轻松。请随意探索、定制和改进代码以满足您的需求。快乐编码!

制作人员

这个项目是作为 JavaScript 的实际应用程序开发的,用于用户输入处理和 DOM 操作。

作者

  • 阿布舍克·古贾尔
    • GitHub 简介

以上是建立一个体重转换器网站的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Stock Market GPT

Stock Market GPT

人工智能驱动投资研究,做出更明智的决策

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何使用CSS创建玻璃塑料效应 如何使用CSS创建玻璃塑料效应 Aug 22, 2025 am 07:54 AM

要创建CSS的玻璃拟态效果,需使用backdrop-filter实现背景模糊,设置半透明背景如rgba(255,255,255,0.1),添加细微边框和阴影以增强层次感,并确保元素背后有足够视觉内容;1.使用backdrop-filter:blur(10px)模糊背景内容;2.采用rgba或hsla定义透明背景控制通透程度;3.添加1pxsolidrgba(255,255,255,0.3)边框及box-shadow提升立体感;4.确保容器具有丰富背景如图片或纹理以呈现模糊穿透效果;5.为兼容旧浏

如何在CSS中创建虚线边框 如何在CSS中创建虚线边框 Aug 15, 2025 am 04:56 AM

使用CSS创建点状边框只需设置border属性为dotted即可,例如“border:3pxdotted#000”可为元素添加3像素宽的黑色点状边框,通过调整border-width可改变点的大小,较宽的边框产生更大的点,且可单独为某一边设置点状边框如“border-top:2pxdottedred”,点状边框适用于div、input等块级元素,常用于焦点状态或可编辑区域以提升可访问性,需注意颜色对比度,同时区别于dashed的短线样式,dotted呈现圆形点状,该特性在所有主流浏览器中均被广泛

如何更改CSS中的列表样式 如何更改CSS中的列表样式 Aug 17, 2025 am 10:04 AM

要更改CSS列表样式,首先使用list-style-type改变项目符号或编号样式,1.使用list-style-type设置ul的项目符号为disc、circle或square,ol的编号为decimal、lower-alpha、upper-alpha、lower-roman或upper-roman,2.用list-style:none完全移除标记,3.使用list-style-image:url('bullet.png')替换为自定义图像,4.通过list-style-position:in

如何使用CSS实现黑暗模式主题 如何使用CSS实现黑暗模式主题 Aug 22, 2025 am 09:55 AM

实现暗黑模式有两种主要方式:一是使用prefers-color-scheme媒体查询自动适配系统偏好,二是通过JavaScript添加手动切换功能。1.使用prefers-color-scheme可自动根据用户系统设置应用暗黑主题,无需JavaScript,只需定义媒体查询内的样式;2.实现手动切换需定义light-theme和dark-themeCSS类,添加切换按钮,并用JavaScript管理主题状态和localStorage保存用户偏好;3.可结合两者,在页面加载时优先读取localSt

如何在CSS中使用网格 - 板序列 如何在CSS中使用网格 - 板序列 Aug 22, 2025 am 07:56 AM

Grid-template-areaspropertyallowsdevelopspocrockearteeintuitive,ReadableLayoutsByDefiningNemedGridareas; everystringrepresentsarowresentsarowandeashwordeachwordaColumnCell,withGrid-areanamesonamesonameSonemaneMeAnemesonChildEllementsMatchingThoseNoseNementsMatchingTheSoseIntheTemplate,suchans'headerheaderheaderheaderheaderheaderheaderheaderheader for for for for for for

如何更改CSS中的光标 如何更改CSS中的光标 Aug 16, 2025 am 05:00 AM

Usebuilt-incursortypeslikepointer,help,ornot-allowedtoprovideimmediatevisualfeedbackfordifferentinteractiveelements.2.ApplycustomcursorimageswiththecursorpropertyusingaURL,optionallyspecifyingahotspotandalwaysincludingafallbacklikeautoorpointer.3.Fol

如何使用CSS订购和无序的列表 如何使用CSS订购和无序的列表 Aug 22, 2025 am 07:59 AM

CSSallowsfullcustomizationoforderedandunorderedliststoenhancereadabilityanddesignconsistency.Youcanchangedefaultmarkersusingthelist-style-typeproperty,suchassettingunorderedliststousesquare,circle,ornobullets,andorderedliststousenumberingstyleslikede

如何在CSS中添加盒子阴影 如何在CSS中添加盒子阴影 Aug 18, 2025 am 11:39 AM

要添加盒阴影,使用box-shadow属性;1.基本语法为box-shadow:水平偏移垂直偏移模糊半径扩展半径颜色内阴影;2.前三个值必填,其余可选;3.使用rgba()或hsla()实现透明效果;4.正扩展半径扩大阴影,负值缩小;5.可通过逗号分隔添加多个阴影;6.应避免过度使用,确保在不同背景上测试可见性;该属性浏览器支持良好,合理运用可提升设计质感。

See all articles