同样的简单提示词,同样的deepseek,会给你返回什么样不同的风格和结果呢?
这是我的,要颜值有颜值,要功能有功能

添加按钮弹窗页面

🙋 用户
写一个移动端简单的网址导航页面 一排两个
🤖 DeepSeek
以下是您所需的移动端网址导航页面的HTML代码。它采用一排两个的卡片式布局,支持添加、编辑和删除网址,并适配移动端深色主题。
html
<!DOCTYPE html><htmllang="zh-CN"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=yes, viewport-fit=cover"><title>简栈导航 · 轻享双排</title><style>*{ margin:0; padding:0; box-sizing: border-box;-webkit-tap-highlight-color: transparent;} body { background:#f5f7fc; font-family: system-ui,-apple-system,'Segoe UI','Roboto','Helvetica Neue',Helvetica, sans-serif; padding:20px16px40px16px; color:#1e293b;}/* 主容器 */.nav-container { max-width:480px; margin:0auto;}/* 头部 */.header { margin-bottom:24px; display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap:12px;}.title-section h1 { font-size:1.85rem; font-weight:700; background: linear-gradient(135deg,#1e2b3c, #2c5368); background-clip: text;-webkit-background-clip: text; color: transparent; letter-spacing:-0.3px;}.title-section p { font-size:0.8rem; color:#5b6e8c; margin-top:4px;}.add-btn { background:#ffffff; border:1px solid #dce3ec; border-radius:60px; padding:8px18px; font-size:0.85rem; font-weight:500; color:#2c5368; display: flex; align-items: center; gap:6px; box-shadow:02px4px rgba(0,0,0,0.02); transition: all 0.2s ease; cursor: pointer; backdrop-filter: blur(2px);}.add-btn:active { transform: scale(0.96); background:#f0f4fa; border-color:#cbd5e1;}.add-icon { font-size:1.2rem; font-weight:600; line-height:1;}/* 网格布局:一排两个 */.nav-grid { display: grid; grid-template-columns:1fr1fr; gap:16px; margin-bottom:28px;}/* 卡片样式 */.nav-card { background: rgba(255,255,255,0.92); backdrop-filter: blur(0px); background:#ffffff; border-radius:24px; box-shadow:08px20px rgba(0,0,0,0.03),02px6px rgba(0,0,0,0.05); transition: transform 0.2s cubic-bezier(0.2,0.9,0.4,1.1), box-shadow 0.2s; overflow: hidden; border:1px solid #eef2f8; display: flex; flex-direction: column;}.nav-card:active { transform: scale(0.98);}/* 链接主体区域 */.card-link { text-decoration: none; display: flex; flex-direction: column; padding:18px12px14px12px; flex:1;}/* 图标占位 + 自定义emoji或首字母 */.card-icon { width:48px; height:48px; background:#eef3ff; border-radius:28px; display: flex; align-items: center; justify-content: center; font-size:1.8rem; margin-bottom:14px; transition: background 0.2s; color:#2c5f8a;}.card-title { font-weight:650; font-size:1.05rem; color:#0f2b3d; line-height:1.3; margin-bottom:6px; word-break:break-word; display: flex; align-items: center; justify-content: space-between;}.card-url { font-size:0.7rem; color:#6f8fae; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-top:4px; letter-spacing:-0.2px;}/* 操作按钮组 (编辑/删除) */.card-actions { display: flex; border-top:1px solid #eff3f9; background:#fefefe;}.action-btn { flex:1; text-align: center; padding:10px0; font-size:0.75rem; font-weight:500; background: transparent; border: none; cursor: pointer; color:#5a6e8c; transition: background 0.2s, color 0.2s; display: flex; align-items: center; justify-content: center; gap:5px;}.action-btn:first-child { border-right:1px solid #eff3f9;}.action-btn:active { background:#f1f5f9;}.edit-btn:active { color:#2c6e9e; }.delete-btn:active { color:#d9534f; }/* 空状态 */.empty-state { background:#ffffffd9; border-radius:32px; padding:40px20px; text-align: center; color:#8196b1; border:1px dashed #cddfe7; margin-top:20px; grid-column: span 2;}.empty-state span { font-size:3rem; display: block; margin-bottom:10px; opacity:0.7;}/* 底部提示 */.footer-note { text-align: center; font-size:0.7rem; color:#9aafc9; margin-top:28px; border-top:1px solid #e2eaf1; padding-top:20px;}/* 模态框 (添加/编辑) */.modal-mask { position:fixed; top:0; left:0; width:100%; height:100%; background: rgba(0,0,0,0.4); backdrop-filter: blur(5px); display: flex; align-items: center; justify-content: center; z-index:1000; visibility: hidden; opacity:0; transition: opacity 0.2s ease, visibility 0s0.2s; padding:20px;}.modal-mask.active { visibility: visible; opacity:1; transition: opacity 0.2s ease, visibility 0s0s;}.modal-container { background:#ffffff; max-width:400px; width:100%; border-radius:40px; box-shadow:025px45px rgba(0,0,0,0.2); overflow: hidden; animation: modalPop 0.2s cubic-bezier(0.2,0.9,0.4,1.1);}@keyframes modalPop {from{ transform: scale(0.96); opacity:0;} to { transform: scale(1); opacity:1;}}.modal-header { padding:20px24px8px24px; font-weight:700; font-size:1.35rem; color:#1e2f3f;}.modal-body { padding:8px24px24px24px;}.input-group{ margin-bottom:20px;}.input-group label { display: block; font-size:0.8rem; font-weight:500; margin-bottom:6px; color:#3c5a73;}.input-group input { width:100%; padding:14px16px; border:1.5px solid #e2eaf1; border-radius:28px; font-size:1rem; background:#fefefe; transition: border 0.2s; font-family: inherit;}.input-group input:focus { outline: none; border-color:#3b82b6; box-shadow:0002px rgba(59,130,182,0.2);}.modal-buttons { display: flex; gap:12px; margin-top:12px;}.modal-buttons button { flex:1; padding:12px0; border-radius:60px; font-weight:600; border: none; background:#f1f5f9; font-size:0.9rem; cursor: pointer; transition:0.1s linear;}.modal-buttons button:active { transform: scale(0.97);}.btn-primary { background:#1f4e6e !important; color: white;}.btn-secondary { background:#eef2f8; color:#2f5a7a;}/* 简单手势反馈 */@media(max-width:480px){ body { padding:16px12px32px12px;}.nav-grid { gap:12px;}.card-title { font-size:0.95rem;}}</style></head><body><divclass="nav-container"><divclass="header"><divclass="title-section"><h1>简栈导航</h1><p>轻巧双列 · 随性收藏</p></div><divclass="add-btn"id="openAddModalBtn"><spanclass="add-icon">+</span><span>添加</span></div></div><!-- 双列网格容器 --><divclass="nav-grid"id="navGrid"></div><divclass="footer-note"> ✨ 点击卡片直达网址 · 支持编辑/删除</div></div><!-- 模态框:新增/编辑 --><divid="modalOverlay"class="modal-mask"><divclass="modal-container"><divclass="modal-header"id="modalTitle">添加新网址</div><divclass="modal-body"><divclass="input-group"><label>🌐 网站名称</label><inputtype="text"id="siteName"placeholder="例如:GitHub"autocomplete="off"></div><divclass="input-group"><label>🔗 网址链接</label><inputtype="url"id="siteUrl"placeholder="https:// 或 http://"autocomplete="off"></div><divclass="modal-buttons"><buttonclass="btn-secondary"id="cancelModalBtn">取消</button><buttonclass="btn-primary"id="confirmModalBtn">保存</button></div></div></div></div><script>// ---------- 存储 KEY ----------const STORAGE_KEY ='easy_nav_sites';// ---------- 默认预设数据 (优雅示范站) ----------const defaultSites =[{ id:'1', name:'🍀 轻阅', url:'https://www.baidu.com', iconFallback:'🍀'},{ id:'2', name:'📘 知乎', url:'https://www.zhihu.com', iconFallback:'📘'},{ id:'3', name:'🎨 豆瓣', url:'https://www.douban.com', iconFallback:'🎨'},{ id:'4', name:'⚡ GitHub', url:'https://github.com', iconFallback:'⚡'},{ id:'5', name:'📦 掘金', url:'https://juejin.cn', iconFallback:'📦'},{ id:'6', name:'🎵 网易云', url:'https://music.163.com', iconFallback:'🎵'}];// 全局数据 let sites =[];// 编辑模式标识: null 表示新增模式,否则存储正在编辑的站点对象id let editingId =null;// DOM 元素const navGrid = document.getElementById('navGrid');const modalOverlay = document.getElementById('modalOverlay');const modalTitle = document.getElementById('modalTitle');const siteNameInput = document.getElementById('siteName');const siteUrlInput = document.getElementById('siteUrl');const confirmModalBtn = document.getElementById('confirmModalBtn');const cancelModalBtn = document.getElementById('cancelModalBtn');const openAddModalBtn = document.getElementById('openAddModalBtn');// ---------- 辅助函数 ----------// 获取图标字符: 优先取name第一个字符或emoji,也可以简单取前两个字符作为趣味展示,但为了好看:若name包含常见emoji则保留,否则用首字function getIconForSite(name){if(!name)return'🔖';// 简单正则检测是否以emoji开头 (常见范围)const emojiRegex =/^(\p{Emoji})/u;const match = name.match(emojiRegex);if(match)return match[0];// 取第一个中文字或字母大写const firstChar = name.charAt(0).toUpperCase();// 如果首字符是字母或者汉字if(/[A-Za-z\u4e00-\u9fa5]/.test(firstChar))return firstChar;return'🔗';}// 保存至 localStoragefunction saveToLocal(){ localStorage.setItem(STORAGE_KEY, JSON.stringify(sites));}// 加载初始数据function loadSites(){const stored = localStorage.getItem(STORAGE_KEY);if(stored){try{const parsed = JSON.parse(stored);if(Array.isArray(parsed)&& parsed.length){ sites = parsed;return;}}catch(e){ console.warn(e);}}// 使用默认数据并补全id和iconFallback(id保证字符串) sites = defaultSites.map(item =>({...item, id: item.id ||String(Date.now()+Math.random()+ item.name), iconFallback: item.iconFallback || getIconForSite(item.name)})); saveToLocal();}// 渲染网格 (一排两个)function renderGrid(){if(!navGrid)return;if(!sites.length){ navGrid.innerHTML =`<div class="empty-state"><span>🗺️</span><p>暂无导航链接,点击「添加」</p><p style="font-size:12px; margin-transform: translateY(6px;">创建你的专属双排导航</p></div>`;return;} let html ='';for(let site of sites){const displayIcon = site.iconFallback && site.iconFallback.length ? site.iconFallback : getIconForSite(site.name);// 处理url显示友好截断 let displayUrl = site.url;try{const urlObj =new URL(site.url); displayUrl = urlObj.hostname.replace(/^www\./,'');}catch(e){ displayUrl = site.url.length >30? site.url.substring(0,28)+'..': site.url;} html +=`<div class="nav-card" data-id="${site.id}"><a class="card-link" href="${escapeHtml(site.url)}" target="_blank" rel="noopener noreferrer"><div class="card-icon">${escapeHtml(displayIcon)}</div><div class="card-title"><span>${escapeHtml(site.name)}</span></div><div class="card-url">${escapeHtml(displayUrl)}</div></a><div class="card-actions"><button class="action-btn edit-btn" data-id="${site.id}" data-action="edit">✏️编辑</button><button class="action-btn delete-btn" data-id="${site.id}" data-action="delete">🗑️删除</button></div></div>`;} navGrid.innerHTML = html;// 绑定卡片内操作按钮事件 (委托)const cards = document.querySelectorAll('.nav-card');// 使用事件委托更稳健,但为了清晰,直接挂载监听器在网格上 navGrid.querySelectorAll('.edit-btn').forEach(btn =>{ btn.addEventListener('click',(e)=>{ e.stopPropagation(); e.preventDefault();const id = btn.getAttribute('data-id'); openEditModalById(id);});}); navGrid.querySelectorAll('.delete-btn').forEach(btn =>{ btn.addEventListener('click',(e)=>{ e.stopPropagation(); e.preventDefault();const id = btn.getAttribute('data-id'); deleteSiteById(id);});});// 让卡片链接正常点击,不影响}// 辅助 escapeHtml 防止XSSfunction escapeHtml(str){if(!str)return'';return str.replace(/[&<>]/g,function(m){if(m ==='&')return'&';if(m ==='<')return'<';if(m ==='>')return'>';return m;}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,function(c){return c;});}// 删除站点function deleteSiteById(id){if(confirm('确定要删除这个导航吗?')){const newSites = sites.filter(s => s.id !== id);if(newSites.length === sites.length)return; sites = newSites; saveToLocal(); renderGrid();}}// 打开编辑模态框function openEditModalById(id){const targetSite = sites.find(s => s.id === id);if(!targetSite)return; editingId = id; modalTitle.innerText ='编辑网址'; siteNameInput.value = targetSite.name; siteUrlInput.value = targetSite.url; openModal();}// 打开新增模态框function openAddModal(){ editingId =null; modalTitle.innerText ='添加新网址'; siteNameInput.value =''; siteUrlInput.value =''; openModal();}function openModal(){ modalOverlay.classList.add('active');// 自动聚焦第一个输入框 setTimeout(()=> siteNameInput.focus(),60);}function closeModal(){ modalOverlay.classList.rem)ove('active'); editingId =null;// 清空验证样式 siteNameInput.style.borderColor =''; siteUrlInput.style.borderColor ='';}// 保存数据 (新增/编辑)function saveSiteFromModal(){ let name = siteNameInput.value.trim(); let url = siteUrlInput.value.trim();// 前端简单校验if(!name){ alert('请填写网站名称'); siteNameInput.focus();returnfalse;}if(!url){ alert('请填写网址链接'); siteUrlInput.focus();returnfalse;}// 简单URL协议补全,如果没有http://或https://,则加上https://if(!url.startsWith('http://')&&!url.startsWith('https://')){ url ='https://'+ url;}// 校验url合法性 (简单正则)const urlPattern =/^(https?:\/\/)([\w-]+(\.[\w-]+)+)([\w.,@?^=%&:/~+#-]*[\w@?^=%&/~+#-])?$/i;if(!urlPattern.test(url)){ alert('请输入有效的网址,例如 https://example.com'); siteUrlInput.focus();returnfalse;}// 生成图标字符const iconChar = getIconForSite(name);if(editingId){// 编辑模式:更新原有站点const index = sites.findIndex(s => s.id === editingId);if(index !==-1){ sites[index]={...sites[index], name: name, url: url, iconFallback: iconChar};}else{ alert('找不到原记录,请刷新'); closeModal();returnfalse;}}else{// 新增模式const newId =Date.now().toString()+'-'+Math.random().toString(36).substring(2,6);const newSite ={ id: newId, name: name, url: url, iconFallback: iconChar}; sites.push(newSite);} saveToLocal(); renderGrid(); closeModal();returntrue;}// 点击遮罩关闭 modalOverlay.addEventListener('click',(e)=>{if(e.target === modalOverlay){ closeModal();}});// 监听按钮 confirmModalBtn.addEventListener('click',(e)=>{ e.preventDefault(); saveSiteFromModal();}); cancelModalBtn.addEventListener('click',(e)=>{ e.preventDefault(); closeModal();}); openAddModalBtn.addEventListener('click',()=>{ openAddModal();});// 键盘事件: 在模态框内按回车保存function handleModalKeydown(e){if(modalOverlay.classList.contains('active')){if(e.key ==='Enter'){ e.preventDefault(); saveSiteFromModal();}elseif(e.key ==='Escape'){ closeModal();}}} document.addEventListener('keydown', handleModalKeydown);// 页面初始化function init(){ loadSites(); renderGrid();} init();</script></body></html>
后台回复导航源码 获取上面完整源码
把下面一句话发送给deepseek,你会得到什么样的页面呢,评论区告诉我。
写一个移动端简单的网址导航页面 一排两个





