Vue3留言墙项目——头部和底部静态页面搭建

文章目录

    • 创建项目
    • 头部
    • 底部

创建项目

Vue3留言墙项目——头部和底部静态页面搭建_第1张图片Vue中使用scss

头部

头部当中有两个按钮,然后根据设计稿可知,本留言墙中有4个按钮,所以可以自己封装一个按钮组件

按钮组件的博客

components/TopNav.vue

<template>
  <div class="topNav">
    <div class="left">
      <img src="@/assets/img/logo.svg" alt="" />
      <span class="title">ZEMOZspan>
    div>

    <div class="center">
      <my-button-vue type="primary">留言墙my-button-vue>
      <my-button-vue type="default">照片墙my-button-vue>
    div>

    <div class="right">
      <div class="user-head">div>
    div>
  div>
template>

<script>
import MyButtonVue from "./MyButtoon/MyButton.vue";
export default {
  components: {
    MyButtonVue,
  },
};
script>

<style lang="scss" scoped>
.topNav {
  width: 100%;
  //   max-width: 1500px; 这里加了这句话以后,页面缩放会很怪
  height: 52px;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.1);
  // 毛玻璃效果
  backdrop-filter: blur(10px);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;

  padding: 0 30px;

  display: flex;
  justify-content: space-between;
  align-items: center;
  flex: 0 0 200px;

  .left {
    display: flex;
    align-items: center;
    img {
      width: 32px;
      height: 32px;
      margin-right: 10px;
    }
  }

  .center {
    flex: 1;
  }
  .right {
    flex: 0 0 100px;
    .user-head {
      border-radius: 50%;
      height: 36px;
      width: 36px;
      background-image: linear-gradient(180deg, #7be7ff, #1e85e2);
    }
  }
}
style>

底部

麻了 写html和css的时候 一定要先把大的框架搭建出来再往里面 仔细去写,否则思路很容易乱掉。

比如这个底部看着是三栏布局,就先把布局搭好,最后再往每一部分里面仔细写

<template>
  <div class="footer">
    <div class="container">
      <div class="left">时光div>
      <div class="center">链接div>
      <div class="right">支付div>
    div>
  div>
template>

<script>
export default {};
script>

<style lang="scss" scoped>
.footer {
  margin-top: 200px;
  background-color: $gray-1;
  width: 100%;
  height: 200px;
  .container {
    width: 1200px;
    display: flex;
    padding-top: $pd-20;
    box-sizing: border-box;
    color: $gray-10;
    .left {
      width: 400px;
    }

    .center {
      flex: 1;
    }

    .right {
      width: 200px;
    }
  }
}
style>

在这里插入图片描述
最后实现效果为:
Vue3留言墙项目——头部和底部静态页面搭建_第2张图片

<template>
  <div class="footer">
    <div class="container">
      <div class="left">
        <div class="user">
          <img src="@/assets/img/logo.svg" alt="" />
          <p class="logo-name">ZEMOZp>
        div>

        <p class="center-p">
          该留言墙是本人独自开发的,为便于与用户交流的留言平台。
          用户将留言便签贴在留言墙上,用户可以自定义便签颜色和内容属性,不仅可以用于交流,也是一场记录。
        p>
        <p class="center-p">p>

        <div class="bottom">
          <span>声明span>
          <span>备案/许可证豫ICP备11111111号 span>
          <span>网站备案/许可证豫ICP备11111111号-1span>
        div>
      div>
      <div class="center">
        <p class="title">链接p>
        <div class="link">
          <a href="javascript">giteea>
          <a href="javascript">CSDNa>
        div>
      div>
      <div class="right">
        <p class="title">打赏p>
        <div class="qr-code">
          <div class="payfor wechat">
            <img src="@/assets/img/weixin.png" alt="" />
            <p class="words">微信支付p>
          div>
          <div class="payfor">
            <img src="@/assets/img/zhifubao.jpg" alt="" />
            <p class="words">支付宝支付p>
          div>
        div>
      div>
    div>
  div>
template>

<script>
export default {};
script>

<style lang="scss" scoped>
.footer {
  margin-top: 200px;
  background-color: $gray-1;
  width: 100%;
  height: 200px;
  .container {
    display: flex;
    padding: $pd-20 100px 0;
    box-sizing: border-box;
    color: $gray-10;
    .left {
      .user {
        display: flex;
        align-items: center;
        padding-bottom: $pd-20;
        .logo-name {
          padding-left: $pd-20;
          font-size: $font-16;
        }
      }

      .center-p {
        font-size: $font-12;
        text-align: left;
        width: 400px;
      }

      .bottom {
        margin-top: $pd-20;
        font-size: $font-12;
        box-sizing: border-box;

        span {
          padding-right: $pd-8;
        }
      }
    }

    .center {
      flex: 1;
      margin-left: -200px;

      .title {
        margin-left: -55px;
      }

      .link {
        a {
          &:first-child {
            margin-right: 20px;
          }
        }
      }
    }

    .title {
      font-size: $font-16;
      padding-bottom: $pd-8;
    }

    .right {
      width: 200px;
      .title {
        margin-left: -170px;
      }
      .qr-code {
        display: flex;

        .payfor {
          &.wechat {
            margin-right: $pd-20;
          }
          img {
            width: 100px;
            height: 100px;
            padding-bottom: $pd-8;
          }

          .words {
            text-align: left;
          }
        }
      }
    }
  }
}
style>

具体可查看gitee此部分改动的代码——点击跳转

你可能感兴趣的:(Vue项目实战,vue.js,javascript,前端)