diff --git a/app/page.tsx b/app/page.tsx
index f0c55e7..d7567ab 100644
--- a/app/page.tsx
+++ b/app/page.tsx
@@ -1,9 +1,20 @@
import Calculator from '@/components/calculator';
+import VerticalAd from '@/components/VerticalAd';
+import HorizontalBanner from '@/components/HorizontalBanner';
export default function Home() {
return (
-
-
-
+ <>
+ {/* 竖向广告弹窗 */}
+
+
+
+ {/* 顶部横向 Banner */}
+
+
+ {/* 主要内容 */}
+
+
+ >
);
}
\ No newline at end of file
diff --git a/components/HorizontalBanner.tsx b/components/HorizontalBanner.tsx
new file mode 100644
index 0000000..67bea49
--- /dev/null
+++ b/components/HorizontalBanner.tsx
@@ -0,0 +1,30 @@
+'use client';
+
+export default function HorizontalBanner() {
+ return (
+
+ {/* 横向 Banner - 7:1 比例 */}
+
+ {/* 占位内容 */}
+
+
+ {/* 实际广告图片占位 */}
+

+
+
+ );
+}
\ No newline at end of file
diff --git a/components/VerticalAd.tsx b/components/VerticalAd.tsx
new file mode 100644
index 0000000..4b43ca1
--- /dev/null
+++ b/components/VerticalAd.tsx
@@ -0,0 +1,62 @@
+'use client';
+
+import { useState, useEffect } from 'react';
+import { X } from 'lucide-react';
+
+export default function VerticalAd() {
+ const [isVisible, setIsVisible] = useState(false);
+
+ useEffect(() => {
+ // 延迟显示广告,避免影响首屏加载
+ const timer = setTimeout(() => {
+ setIsVisible(true);
+ }, 1000);
+
+ return () => clearTimeout(timer);
+ }, []);
+
+ const handleClose = () => {
+ setIsVisible(false);
+ };
+
+ if (!isVisible) return null;
+
+ return (
+
+
+ {/* 关闭按钮 */}
+
+
+ {/* 广告内容 - 5:3 比例 */}
+
+ {/* 占位内容 */}
+
+
+ {/* 实际广告图片占位 */}
+

+
+
+
+ );
+}
\ No newline at end of file