-
网站代码精选:基础网站代码合集
想搭起一个能展示工作室、介绍作品、适配手机并带有简单交互的网站,可以从下面这6段代码开始。它们分别负责HTML骨架、基础样式、作品卡片、移动端布局、导航菜单和表单反馈。按顺序放入对应文件,就能组成一个简洁的静态展示站;也可以先选用其中一段,再逐步补齐其他功能。
1. HTML骨架:安排导航、介绍区和联系表单
先新建 index.html,放入网站的主体结构。导航链接分别跳转到带有对应
id的区块,访客还可以在联系表单中填写邮箱。<!doctype html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>简洁展示站</title> <link rel="stylesheet" href="style.css"> </head> <body> <header class="site-header"> <a class="logo" href="#home">青禾工作室</a> <button class="menu-toggle" aria-expanded="false">菜单</button> <nav class="site-nav" aria-label="主导航"> <a href="#about">关于</a> <a href="#works">作品</a> <a href="#contact">联系</a> </nav> </header> <main> <section class="hero" id="home"> <p class="eyebrow">设计 · 创作 · 分享</p> <h1>让好点子,清楚地被看见</h1> <p>用简洁的方式介绍团队、服务与近期作品。</p> <a class="cta" href="#works">浏览作品</a> </section> <section class="showcase-section" id="about"> <h2>关于我们</h2> <p>青禾工作室专注于清晰、实用的数字创作。</p> </section> <section class="showcase-section" id="works"> <h2>精选作品</h2> <div class="card-grid"> <article class="card"><h3>品牌视觉</h3><p>从标识到配色,建立统一印象。</p></article> <article class="card"><h3>网页设计</h3><p>突出重点,让浏览路径更直接。</p></article> <article class="card"><h3>活动策划</h3><p>把活动安排整理成易读的步骤。</p></article> </div> </section> <section class="showcase-section" id="contact"> <h2>保持联系</h2> <form id="contact-form"> <label for="email">电子邮箱</label> <input id="email" name="email" type="email" required> <button type="submit">提交</button> <p id="form-message" aria-live="polite"></p> </form> </section> </main> <footer>? 青禾工作室</footer> <script src="script.js" defer></script> </body> </html>2. 基础样式:统一字体、颜色与文字行宽
新建 style.css,先设置全站通用规则,再调整顶部导航和首屏。用
max-width限制段落行宽,避免宽屏上每行文字过长。* { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; color: #20302b; background: #f7f8f5; font-family: system-ui, "Microsoft YaHei", sans-serif; line-height: 1.7; } a { color: inherit; } .site-header { display: flex; align-items: center; justify-content: space-between; padding: 18px max(6%, calc((100% - 1120px) / 2)); background: #fff; } .logo { font-weight: 700; text-decoration: none; } .site-nav { display: flex; gap: 24px; } .site-nav a { text-decoration: none; } .menu-toggle { display: none; } .hero { max-width: 1120px; margin: 0 auto; padding: 100px 24px; } .hero h1 { max-width: 720px; font-size: clamp(2.2rem, 6vw, 4.5rem); line-height: 1.15; } .eyebrow { color: #47765e; font-weight: 700; } .cta { display: inline-block; margin-top: 12px; padding: 10px 20px; border-radius: 8px; color: #fff; background: #347354; text-decoration: none; }3. 作品卡片:让服务介绍一眼分层
卡片适合展示服务、项目或文章摘要。为每张卡片设置相同的内边距,再用轻量边框区分层次,不必堆叠复杂装饰。
.showcase-section { max-width: 1120px; margin: 0 auto; padding: 56px 24px; } .card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; } .card { padding: 24px; border: 1px solid #e0e7e1; border-radius: 12px; background: #fff; } .card h3 { margin-top: 0; } .card p { margin-bottom: 0; color: #58665f; } form { max-width: 480px; } label, input { display: block; width: 100%; } input { margin: 8px 0 14px; padding: 12px; border: 1px solid #b9c8bd; border-radius: 6px; font: inherit; } form button { padding: 10px 18px; border: 0; border-radius: 6px; color: #fff; background: #347354; font: inherit; cursor: pointer; } footer { padding: 28px 6%; text-align: center; color: #58665f; }4. 移动端布局:窄屏改为单列并展开菜单
桌面端的三列卡片在手机上会显得拥挤。用媒体查询调整卡片列数、导航显示方式和首屏留白,网站便能在小屏幕上保持清楚。
@media (max-width: 700px) { .site-header { position: relative; flex-wrap: wrap; } .menu-toggle { display: block; } .site-nav { display: none; flex-basis: 100%; flex-direction: column; gap: 12px; padding-top: 16px; } .site-nav.is-open { display: flex; } .hero { padding: 68px 24px; } .card-grid { grid-template-columns: 1fr; } } @media (min-width: 701px) and (max-width: 960px) { .card-grid { grid-template-columns: repeat(2, 1fr); } }这组断点将宽度不超过700px的手机布局设为单列,701px至960px的中等屏幕显示两列,其余宽屏则保留三列卡片。
5. 导航交互:点击菜单展开或收起选项
在项目目录中新建 script.js。代码监听菜单按钮,切换导航的显示类名,并更新
aria-expanded,方便辅助技术读取按钮状态。const menuButton = document.querySelector(".menu-toggle"); const siteNav = document.querySelector(".site-nav"); menuButton.addEventListener("click", () => { const isOpen = siteNav.classList.toggle("is-open"); menuButton.setAttribute("aria-expanded", String(isOpen)); }); siteNav.querySelectorAll("a").forEach((link) => { link.addEventListener("click", () => { siteNav.classList.remove("is-open"); menuButton.setAttribute("aria-expanded", "false"); }); });点击“菜单”后,手机上的导航选项会展开;选择“关于”“作品”或“联系”后,菜单自动收起,避免导航一直占据屏幕。
6. 表单反馈:提交后显示明确提示
静态演示站尚未连接后台时,可以先用浏览器验证邮箱格式,并显示前端校验结果。这种做法适合演示填写流程,但不能代替真正的表单接收服务。
const contactForm = document.querySelector("#contact-form"); const formMessage = document.querySelector("#form-message"); contactForm.addEventListener("submit", (event) => { event.preventDefault(); if (!contactForm.checkValidity()) { contactForm.reportValidity(); return; } formMessage.textContent = "邮箱格式有效,表单已完成前端校验。"; contactForm.reset(); });组合使用时的检查顺序
把第1段保存为 index.html,第2至第4段依次放进 style.css,再将第5、第6段放进 script.js。打开本地文件后,按顺序检查导航跳转、三张作品卡片、窄屏单列布局、菜单展开和邮箱格式校验。替换工作室名称、介绍文案与卡片标题即可打造自己的展示站;调整颜色时,优先修改基础样式中的背景色与按钮色,整体观感会更统一。
- 责任编辑: 王志郁?
-
伊朗外交部公布伊美谈判安排,称黎以停火是主要议题
2026-10-07 13:40:09 紧急止付 -
振石股份IPO:业绩波动,难舍关联交易,分完11亿后再募39亿
2026-10-04 00:56:09 -
金建熙案现场发现遗书,警方排除他杀可能性引发争议
2026-09-30 04:15:09 惩罚性赔偿 -
保温杯不适合装6种饮品
2026-10-03 14:21:09 撤材料 -
隐翅虫被火烧后直接碳化
2026-10-12 04:15:09 排序权重 -
解放军霸气回应侵权碰瓷
2026-10-05 20:54:09 分子对接 -
布拉迪斯拉发对阵采列裁判数据:裁判茨瓦耶执法
2026-09-30 19:22:09 出海潮 -
一个老板的贷款噩梦:12万服务费变成近100万,非法中介套路曝光
2026-10-08 08:02:09 协同发力 -
马鞍山钢铁股份前三季度板材生产量达722万吨 销售量728万吨
2026-10-11 03:57:09 基础学科 -
北京倡导居家办公
2026-10-07 07:11:09 -
全球商务区“顶流”为何投票静安?
2026-10-12 04:58:09 -
山石网科ASIC安全芯片量产 加速网络安全国产化进程
2026-10-11 05:37:09 互操作性
相关推荐 -
1民生保险举牌浙商银行 年内险资已“扫货”7家银行股 券商分析后续增配空间依然较大评论 52?赞 703229
2iPhone Duo 拍娃神器评论 89?赞 972955
3SpaceX IPO定价为每股135美元 创史上最大规模IPO评论 45?赞 33273
4龙大美食控股股东所持750万股被司法冻结 公司称经营不受影响评论 37?赞 37285
516岁女生服刑期发现漏罪被判12年评论 35?赞 689507?最新闻 Hot
观察员


















上海市互联网违法与不良信息举报中心
请自觉遵守互联网相关的政策法规,共同营造“阳光、理性、平和、友善”的跟评互动环境。