首页  >  文章  >  web前端  >  建立一个美食汉堡网站

建立一个美食汉堡网站

WBOY
WBOY原创
2024-08-31 06:35:06213浏览

Build a Foodie Hamburger Website

介绍

开发者们大家好!我很高兴分享我的最新项目:美食汉堡网站。该项目非常适合那些希望建立一个具有视觉吸引力和功能性的网站来展示各种汉堡选项的人。这是使用 HTML、CSS 和 JavaScript 增强前端开发技能的好方法,同时为用户创造令人愉快的 Web 体验。

项目概况

美食汉堡网站是一个网络应用程序,旨在展示不同的汉堡菜单和特别优惠。它采用简洁、现代的设计,让用户可以轻松浏览各个部分,例如热门精选、皇堡、绝妙菜单、新美食精选和每日特惠。该项目演示了如何创建一个交互式且美观的网站。

特征

  • 交互式导航:汉堡菜单,可在较小的屏幕上折叠和展开,以提高可用性。
  • 响应式设计:确保网站在桌面和移动设备上看起来都很棒。
  • 简洁的布局:提供一种视觉上吸引人的方式来显示不同的汉堡选项和特别优惠。

使用的技术

  • HTML:提供美食汉堡网站的结构。
  • CSS:设置网站样式以创建现代且响应式的设计。
  • JavaScript:管理交互元素,包括汉堡菜单功能。

项目结构

以下是项目结构的概述:

Foodie-Hamburger/
├── index.html
├── style.css
└── script.js
  • index.html:包含美食汉堡网站的 HTML 结构。
  • style.css:包含 CSS 样式以创建引人入胜且响应式的设计。
  • script.js:管理网站的交互元素,例如汉堡菜单。

安装

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

  1. 克隆存储库

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

    cd Foodie-Hamburger
    
  3. 运行项目:

    • 在网络浏览器中打开index.html 文件以查看美食家汉堡网站。

用法

  1. 在网络浏览器中打开网站
  2. 使用顶部菜单或较小屏幕上的汉堡菜单浏览各个部分
  3. 探索不同的汉堡选项和特别优惠。
  4. 点击汉堡菜单图标在较小的屏幕上打开或关闭导航。

代码说明

超文本标记语言

index.html 文件定义了美食汉堡网站的结构,包括导航、不同汉堡选项的部分以及页脚。这是一个片段:



  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Foodie Hamburger</title>
  <link href="https://fonts.googleapis.com/css?family=Poppins:100,100italic,200,200italic,300,300italic,regular,italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic" rel="stylesheet">
  <link rel="stylesheet" href="style.css">
  <script src="./script.js" defer></script>


  <div class="main-content">
    <header>
      <div class="header-content">
        <div class="建立一个美食汉堡网站">
          <img src="./images/%E5%BB%BA%E7%AB%8B%E4%B8%80%E4%B8%AA%E7%BE%8E%E9%A3%9F%E6%B1%89%E5%A0%A1%E7%BD%91%E7%AB%99.svg" alt="建立一个美食汉堡网站">
        </div>
        <div class="hamburger-menu-container">
          <div class="hamburger-menu">
            <span class="hamburger-icon">☰</span>
          </div>
        </div>
        <nav>
          <span class="close-icon">×</span>
          <a href="#top-picks">Top Picks</a>
          <a href="#whooper">Whopper</a>
          <a href="#stunner-menu">Stunner Menu</a>
          <a href="#new-foodie-collection">New Foodie Collection</a>
          <a href="#deal-of-the-day">Deal of the Day</a>
        </nav>
      </div>
    </header>
    <main>
      <section class="hero-section">
        <div class="img-container">
          <img src="./images/hero-image.png" alt="hero-image">
        </div>
        <p>Well, You can’t resist anymore!</p>
      </section>
      <section id="top-picks" class="section">
        <h2>Top Picks</h2>
        <div class="img-container">
          <img src="./images/burger-1.png" alt="burger-1">
        </div>
      </section>
      <section id="whooper" class="section">
        <h2>Whopper</h2>
        <div class="img-container">
          <img src="./images/burger-2.png" alt="burger-2">
        </div>
      </section>
      <section id="stunner-menu" class="section">
        <h2>Stunner Menu</h2>
        <div class="img-container">
          <img src="./images/burger-3.png" alt="burger-3">
        </div>
      </section>
      <section id="new-foodie-collection" class="section">
        <h2>New Foodie Collection</h2>
        <div class="img-container">
          <img src="./images/burger-4.png" alt="burger-4">
        </div>
      </section>
      <section id="deal-of-the-day" class="section">
        <h2>Deal of the Day</h2>
        <div class="img-container">
          <img src="./images/burger-5.png" alt="burger-5">
        </div>
      </section>
      <footer>
        <h3 class="go-to-top"><a href="#">Go to Top</a></h3>
        <p class="footer-text">Made with ❤️ by Abhishek Gurjar</p>
      </footer>
    </main>
  </div>


CSS

style.css 文件为美食家汉堡网站设计样式,确保其具有视觉吸引力和响应能力。以下是一些关键样式:

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background-color: #f6f0eb;
  font-family: 'Poppins', sans-serif;
}

.main-content {
  overflow-x: hidden;
  height: 100vh;
  scroll-behavior: smooth;
}

a {
  text-decoration-line: none;
  color: inherit;
}

header {
  background-color: #fff;
  padding: 24px;
}

.header-content {
  max-width: 1290px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
}

nav {
  display: flex;
  /* gap: 60px; */
}

nav a {
  font-weight: 700;
  font-size: 20px;
  color: #492118;
}

nav a + a {
  margin-left: 60px;
}

.建立一个美食汉堡网站 {
  width: 50px;
}

img {
  width: 100%;
}

main {
  padding: 0 24px;
}

.hero-section {
  margin-top: 100px;
}

.img-container {
  max-width: 1290px;
  margin: 0 auto;
}

.hero-section p {
  color: #492118;
  text-align: center;
  font-size: 24px;
}

.section {
  margin-top: 120px;
}

.section .img-container {
  max-width: 960px;
}

.section h2 {
  font-weight: 700;
  font-size: 48px;
  color: #492118;
  text-align: center;
}

.go-to-top {
  text-align: right;
  max-width: 960px;
  margin: 0 auto;
  font-size: 32px;
  margin-top: 80px;
}

.go-to-top a {
  text-decoration-line: underline;
}

.footer-text {
  text-align: center;
  color: #858585;
  font-size: 24px;
  margin-top: 64px;
}

.close-icon {
  position: absolute;
  top: 8px;
  right: 12px;
  cursor: pointer;
  display: none;
}

.hamburger-menu-container {
  overflow: hidden;
  position: relative;
  width: 40px;
  height: 40px;
  display: none;
}

.hamburger-menu {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  position: absolute;
  top: -64px;
  right: -58px;
  background-color: white;
  cursor: pointer;
}

.hamburger-icon {
  font-size: 16px;
  position: absolute;
  bottom: 10px;
  left: 20px;
}

@media (max-width: 1200px) {
  nav a {
    font-size: 16px;
  }

  nav a + a {
    margin-left: 48px;
  }

  header {
    padding: 16px 24px;
  }
}

@media (max-width: 960px) {
  nav a {
    font-size: 12px;
  }

  nav a + a {
    margin-left: 32px;
  }

  .hero-section {
    margin-top: 32px;
  }

  .section {
    margin-top: 42px;
  }

  .hero-section p {
    font-size: 10px;
  }

  .section h2 {
    font-size: 14px;
  }
}

@media (max-width: 768px) {
  header {
    background-color: #f6f0ebb7;
    backdrop-filter: blur(8px);
    position: sticky;
    top: 0;
    padding: 8px 24px;
  }

  .header-content {
    min-height: 40px;
  }

  nav {
    position: absolute;
    background: rgba(255, 255, 255, 0.9);
    flex-direction: column;
    padding: 24px;
    right: -200px;
    top: 16px;
    transition: right 0.25s ease-in-out;
    /* display: none; */
  }

  nav a + a {
    margin: 0;
    margin-top: 16px;
  }

  .close-icon,
  .hamburger-menu-container {
    display: block;
  }

  .menu-open nav {
    /* display: flex; */
    right: 24px;
  }

  .menu-open .hamburger-menu-container {
    display: none;
  }

  .go-to-top {
    font-size: 12px;
    margin-top: 40px;
  }

  .footer-text {
    font-size: 10px;
    margin-top: 32px;
  }

  .建立一个美食汉堡网站 {
    width: 30px;
  }
}

JavaScript

script.js 文件包含根据用户输入选项卡切换弹出菜单栏的逻辑。这是一个片段:

const hamburgerIcon = document.querySelector('.hamburger-menu-container');
const headerContent = document.querySelector('.header-content');
const closeIcon = document.querySelector('.close-icon');
const nav = document.querySelector('nav');

hamburgerIcon.addEventListener('click', (e) => {
  e.stopPropagation();
  headerContent.classList.add('menu-open');
});

nav.addEventListener('click', (e) => {
  e.stopPropagation();
});

closeIcon.addEventListener('click', () => {
  headerContent.classList.remove('menu-open');
});

window.addEventListener('click', () => {
  headerContent.classList.remove('menu-open');
});

现场演示

您可以在此处查看美食家汉堡网站项目的现场演示。

结论

构建美食家汉堡网站是创建视觉吸引力和交互式网络体验的绝佳机会。该项目展示了各种汉堡选项和特价优惠,为用户提供愉快的浏览体验。通过应用 HTML、CSS 和 JavaScript,我们创建了一个响应式且用户友好的网站,突出了基本的前端开发技能。我希望这个项目能够激励您探索创造性的方法来构建引人入胜的网络体验。快乐编码!

制作人员

这个项目是我在 Web 开发方面持续学习之旅的一部分。

作者

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

以上是建立一个美食汉堡网站的详细内容。更多信息请关注PHP中文网其他相关文章!

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