【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡

简介: 【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡

【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡

引言

我们有个产品需要个很漂亮的落地页,网上找了一圈想买个好看的落地页都买不到,于是乎卓伊凡决定做一个非常漂亮的落地页,记录过程给大家。

开源仓库:

https://gitee.com/youyacao/xiaoquanzi-down

演示地址:

https://xqz.fan

实战内容

第5篇我们粗糙的落地页就完成了,但是我说了是粗糙,现在卓伊凡对首页进行改造

首先我们把使用教程改下 ,原先是文字,但是我们做了有视频因此修改

首先对平台特色完善

先对内容进行了完善,然后 是对样式也进行了完善

然后我们对更新日志部分进行特殊调整

更新日志前缀符号优化总结

主要改进:

  1. 更大的前缀符号:
  • 从 w-2 h-2 增加到 w-3 h-3,使符号更加显眼
  1. 双层设计:
  • 外层:蓝色圆点 (bg-blue-500)
  • 内层:白色小圆点 (bg-white),形成更精致的视觉效果
  1. 更好的对齐:
  • 调整了 mt-2 到 mt-1.5,使符号与文字更好地对齐
  • 使用 flex items-center justify-center 确保内层圆点居中
  1. 增加间距:
  • 从 space-y-3 增加到 space-y-4,让每行更新内容之间有更多空间
  1. 改善文字样式:
  • 添加了 leading-relaxed 类,使文字行间距更舒适

视觉效果:

  • 更精致:双层圆点设计比单层圆点更有层次感
  • 更清晰:更大的符号更容易识别
  • 更统一:所有更新条目都使用相同的符号样式
  • 更易读:增加了行间距,文字更易阅读
<div class="update-log-section py-8">
            <div class="max-w-4xl mx-auto px-4">
              <div class="card bg-gradient-to-r from-blue-50 to-indigo-50 p-6 border border-blue-100">
                <div class="flex items-center justify-between mb-4">
                  <div class="flex items-center space-x-3">
                    <div class="w-10 h-10 bg-blue-500 rounded-full flex items-center justify-center">
                      <svg class="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
                        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z"></path>
                      </svg>
                    </div>
                    <div>
                      <h3 class="text-xl font-bold text-gray-800">最新更新日志</h3>
                      <p class="text-sm text-gray-600">版本 v1.4.3 • 2025年10月19日</p>
                    </div>
                  </div>
                  <div class="bg-green-100 text-green-800 px-3 py-1 rounded-full text-sm font-medium">
                    最新版本
                  </div>
                </div>
                <div class="space-y-4">
                  <div class="flex items-start space-x-3">
                    <div class="w-4 h-4 bg-blue-500 rounded-full mt-1 flex-shrink-0 flex items-center justify-center">
                      <span class="text-white text-xs font-bold">•</span>
                    </div>
                    <p class="text-gray-700 leading-relaxed">由于微信支付故障,独立处理了支付宝支付,目前APP支付和H5支付均恢复正常。</p>
                  </div>
                  <div class="flex items-start space-x-3">
                    <div class="w-4 h-4 bg-blue-500 rounded-full mt-1 flex-shrink-0 flex items-center justify-center">
                      <span class="text-white text-xs font-bold">•</span>
                    </div>
                    <p class="text-gray-700 leading-relaxed">美化了个人中心的图标。</p>
                  </div>
                  <div class="flex items-start space-x-3">
                    <div class="w-4 h-4 bg-blue-500 rounded-full mt-1 flex-shrink-0 flex items-center justify-center">
                      <span class="text-white text-xs font-bold">•</span>
                    </div>
                    <p class="text-gray-700 leading-relaxed">处理了APP下载按钮在APP中无法打开的报错。</p>
                  </div>
                  <div class="flex items-start space-x-3">
                    <div class="w-4 h-4 bg-blue-500 rounded-full mt-1 flex-shrink-0 flex items-center justify-center">
                      <span class="text-white text-xs font-bold">•</span>
                    </div>
                    <p class="text-gray-700 leading-relaxed">预开发了图片放大和保存功能,目前经过反馈部分图片过大在APP部分机型无法正常显示。</p>
                  </div>
                </div>
                <div class="mt-4 pt-4 border-t border-blue-200">
                  <p class="text-sm text-gray-500">
                    <span class="font-medium">温馨提示:</span>如遇到任何问题,请及时联系我们的技术支持团队。
                  </p>
                </div>
              </div>
            </div>
          </div>

再把前缀小圆点的颜色改成黑色

效果 zer的 一下就就出来了

对网址按钮进行细节优化

我想做的效果是 默认是橙色,鼠标移动上去渐变为红色。

写法如下
class=”inline-flex items-center px-8 py-4 bg-orange-500 text-white font-semibold rounded-xl shadow-lg hover:bg-red-500 transition-all duration-300 transform hover:scale-105”

效果也是ok的了。

常见问题部分 不好看,也是改

首页 (HomePage.vue) 修改:

  1. 常见问题部分:
  • FAQ卡片:bg-white rounded-xl shadow-sm → card bg-white
  • FAQ分类标签:添加了 card 类
  • 无结果提示:bg-white rounded-xl shadow-sm → card bg-white
  • 底部CTA按钮:添加了 card 类
  1. 联系我们部分:
  • 所有联系卡片:contact-card bg-white rounded-xl shadow-md → card contact-card bg-white

其他页面修改:

FeaturesPage.vue:

  • 所有特色卡片:feature-card bg-white rounded-lg shadow-lg → card feature-card bg-white

TutorialsPage.vue:

  • 关注机制说明卡片:bg-white rounded-2xl shadow-lg → card bg-white
  • 操作指南卡片:bg-white rounded-xl shadow-lg → card bg-white
  • 注意事项卡片:bg-white rounded-lg → card bg-white

AboutPage.vue:

  • 所有功能介绍卡片:bg-gray-50 rounded-lg shadow-sm → card bg-gray-50

CreatorsPage.vue:

  • 所有成功案例卡片:story-card bg-white rounded-lg shadow-lg → card story-card bg-white

MonetizationPage.vue:

  • 所有变现方式卡片:method-card bg-white rounded-lg shadow-lg → card method-card bg-white
  • 收入分析卡片:revenue-analysis bg-white rounded-lg shadow-lg → card revenue-analysis bg-white

TestimonialsPage.vue:

  • 所有评价卡片:testimonial-card bg-white rounded-lg shadow-lg → card testimonial-card bg-white

FaqPage.vue:

  • 联系支持卡片:contact-support bg-gray-50 rounded-lg → card contact-support bg-gray-50

统一效果:

  • 一致的圆角:所有卡片都使用 var(—radius-lg) 即 0.75rem 的圆角
  • 统一的阴影:所有卡片都使用 var(—shadow-sm) 的阴影效果
  • 一致的悬停效果:继承了 card:hover 的悬停动画效果
  • 统一的过渡动画:继承了 card 的过渡效果
  • 更好的视觉一致性:整个网站现在具有统一的卡片样式

logo的样式还是太丑。

加入样式

<div class="flex flex-col">
            <span class="text-3xl font-black text-transparent bg-clip-text bg-gradient-to-r from-orange-500 via-red-500 to-pink-500 leading-none tracking-tight" style="font-family: 'PingFang SC', 'Microsoft YaHei', 'Helvetica Neue', Arial, sans-serif; text-shadow: 0 2px 4px rgba(0,0,0,0.1);">小圈子</span>
            <span class="text-sm font-semibold text-gray-600 group-hover:text-orange-500 transition-colors duration-300 tracking-wider" style="font-family: 'SF Pro Display', 'PingFang SC', 'Microsoft YaHei', monospace; letter-spacing: 0.1em;">xqz.fan</span>
          </div>

美观

下一步,我们继续,我发现个问题npm打包出来的文件 ,底部链接诸如隐私政策,平台特色,创作者平台等链接跳转会Nginx 404

通过顶部的菜单栏点开就不会404,顶部点开就直接能跳转,这是什么问题?

其实

这是一个典型的单页应用(SPA)路由配置问题。当通过底部链接访问时,Nginx会尝试在服务器上查找对应的物理文件,但实际上这些路由是由Vue Router在客户端处理的,所以会出现404错误。

问题分析:

  1. 底部链接使用了普通的 <a> 标签:底部链接使用的是 <a href="/path"> 而不是 Vue Router 的 <router-link>,这会导致浏览器直接向服务器请求这些路径,而不是通过 Vue Router 处理。
  2. Nginx 配置问题:Nginx 没有配置 SPA 的 fallback 规则,当访问不存在的路径时返回 404 而不是 index.html。

解决方案:

<ul class="space-y-2">
              <li><router-link to="/features" class="text-gray-400 hover:text-white transition-fast">平台特色</router-link></li>
              <li><router-link to="/creators" class="text-gray-400 hover:text-white transition-fast">创作者价值</router-link></li>
              <li><router-link to="/monetization" class="text-gray-400 hover:text-white transition-fast">变现方式</router-link></li>
              <li><router-link to="/testimonials" class="text-gray-400 hover:text-white transition-fast">用户评价</router-link></li>
            </ul>

类似这样

2. 创建 Nginx 配置文件

现在我需要创建一个 Nginx 配置文件来解决 SPA 路由问题:

server {
    listen 80;
    server_name your-domain.com;  # 替换为你的域名
    # 网站根目录
    root /var/www/html;  # 替换为你的网站根目录
    index index.html;
    # 启用 gzip 压缩
    gzip on;
    gzip_vary on;
    gzip_min_length 1024;
    gzip_proxied any;
    gzip_comp_level 6;
    gzip_types
        text/plain
        text/css
        text/xml
        text/javascript
        application/json
        application/javascript
        application/xml+rss
        application/atom+xml
        image/svg+xml;
    # 静态资源缓存
    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
        expires 1y;
        add_header Cache-Control "public, immutable";
        try_files $uri =404;
    }
    # SPA 路由处理 - 这是关键配置
    location / {
        try_files $uri $uri/ /index.html;
    }
    # 安全头设置
    add_header X-Frame-Options "SAMEORIGIN" always;
    add_header X-Content-Type-Options "nosniff" always;
    add_header X-XSS-Protection "1; mode=block" always;
    add_header Referrer-Policy "strict-origin-when-cross-origin" always;
    # 错误页面
    error_page 404 /index.html;
}

问题修复总结

问题原因分析:

  1. 前端问题
  • 底部链接使用了普通的 <a href="/path"> 标签
  • 这会导致浏览器直接向服务器请求这些路径
  • 服务器找不到对应的物理文件,返回 404
  1. Nginx 配置问题
  • 缺少 SPA (单页应用) 的 fallback 配置
  • 当访问不存在的路径时,Nginx 应该返回 index.html 让 Vue Router 处理

修复方案:

1. 前端修复(已完成)

  • 将所有底部链接从 <a href="/path"> 改为 <router-link to="/path">
  • 这样所有链接都会通过 Vue Router 在客户端处理

2. Nginx 配置修复

  • 创建了 nginx.conf 配置文件
  • 添加了关键的 SPA 路由处理规则:
location / {
    try_files $uri $uri/ /index.html;
}

3. 部署文档

  • 创建了详细的 DEPLOYMENT.md 说明文档
  • 包含了问题分析、解决方案和部署步骤

为什么顶部菜单正常?

  • 顶部菜单使用的是 <router-link> 组件
  • Vue Router 在客户端处理路由,不会向服务器发送请求

部署步骤:

  1. 重新构建项目:npm run build
  2. nginx.conf 配置应用到服务器
  3. 修改配置文件中的域名和路径
  4. 重新加载 Nginx 配置

现在底部链接应该可以正常工作了!

我们测试下,完美可用。

目录
相关文章
|
3月前
|
移动开发 Android开发
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
210 0
|
3月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
373 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
3月前
|
移动开发 Rust JavaScript
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
840 4
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
4月前
|
开发工具 Android开发
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
638 11
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
|
4月前
|
Java 开发工具 Maven
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
301 6
|
6月前
|
安全 数据库 Android开发
在Android开发中实现两个Intent跳转及数据交换的方法
总结上述内容,在Android开发中,Intent不仅是活动跳转的桥梁,也是两个活动之间进行数据交换的媒介。运用Intent传递数据时需注意数据类型、传输大小限制以及安全性问题的处理,以确保应用的健壯性和安全性。
458 11
|
10月前
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
2827 77
|
6月前
|
移动开发 Java 编译器
Kotlin与Jetpack Compose:Android开发生态的演进与架构思考
本文从资深Android工程师视角深入分析Kotlin与Jetpack Compose在Android系统中的技术定位。Kotlin通过空安全、协程等特性解决了Java在移动开发中的痛点,成为Android官方首选语言。Jetpack Compose则引入声明式UI范式,通过重组机制实现高效UI更新。两者结合不仅提升开发效率,更为跨平台战略和现代架构模式提供技术基础,代表了Android开发生态的根本性演进。
288 0
|
7月前
|
安全 Java Android开发
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
365 0
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
|
11月前
|
前端开发 Java Shell
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
785 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex

热门文章

最新文章