简单的留言板网页

本文提供了一个简单的留言板HTML页面布局示例,包括留言输入框、用户名输入框及发表按钮,并展示了两个样例留言条目。
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>留言板</title>
	
<style type="text/css">
	.add{
		margin:0px auto;
		overflow: hidden;
		width: 600px;
	}
	.add textarea{
		width: 99%;
		height: 100px;
	}
	.add .user{
		float: left;
	}
	.add .btn{
		float: right;
	}
	.msg{
		width: 600px;
		margin: 20px auto;
		overflow: hidden;
	}
	.item{
		border:solid 1px #CCC;
		margin: 10px 0;
	}
	.item.user{
		float: left;
	}
	.item .time{
		float: right;
	}
</style>
</head>
<body>
	<div class="add">
		<textarea>留言内容</textarea>
		<input class="user" type="text">
		<input class="btn" type="button" value="发表">
	</div>
	<div class="msg">
		<div class="item">
			<span class="user">用户名1</span>
			<span class="time">2017.8.7</span>
			<p>我热爱学习,爱死学习了</p>
		</div>
		<div class="item">
			<span class="user">用户名2</span>
			<span class="time">2017.8.7</span>
			<p>我热爱你,爱死你了</p>
		</div>
	</div>
</body>
</html>

<think>我们正在设计一个简单留言板网页留言板通常包含以下元素:1.一个表单用于输入留言(包括姓名、留言内容等)2.一个显示历史留言的区域3.可能需要一些简单的样式(CSS)由于用户要求的是HTML代码,我们将提供一个基本的HTML结构,包括表单和留言显示区域。同时,为了使其看起来更美观,我们会添加一些内联CSS样式。注意:这个留言板是前端的,没有后端支持,所以刷新页面后留言会消失。如果需要持久化,则需要后端和数据库,但这里只提供前端HTML/CSS/JavaScript示例。我们将实现以下功能:-用户输入姓名和留言内容-点击提交按钮后,将留言添加到留言列表中-每条留言显示姓名、留言内容和时间戳我们将使用JavaScript(内嵌在HTML中)来处理表单提交和动态添加留言。下面是完整的HTML代码示例:</think>下面是一个简单留言板网页的HTML设计示例,包含基本功能和样式: ```html <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>简单留言板</title> <style> body { font-family: 'Microsoft YaHei', sans-serif; max-width: 800px; margin: 0 auto; padding: 20px; background-color: #f5f5f5; } .container { background: white; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); padding: 20px; } h1 { text-align: center; color: #333; border-bottom: 2px solid #eee; padding-bottom: 10px; } .form-group { margin-bottom: 15px; } label { display: block; margin-bottom: 5px; font-weight: bold; } input, textarea { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; box-sizing: border-box; } textarea { height: 100px; resize: vertical; } button { background: #4CAF50; color: white; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; font-size: 16px; } button:hover { background: #45a049; } .message { border: 1px solid #eee; border-radius: 4px; padding: 15px; margin-top: 20px; background: #fafafa; } .message-header { font-weight: bold; color: #333; margin-bottom: 5px; } .message-time { color: #888; font-size: 0.9em; } .message-content { margin-top: 10px; line-height: 1.5; } </style> </head> <body> <div class="container"> <h1>简单留言板</h1> <!-- 留言表单 --> <form id="messageForm"> <div class="form-group"> <label for="name">您的姓名:</label> <input type="text" id="name" required> </div> <div class="form-group"> <label for="message">留言内容:</label> <textarea id="message" required></textarea> </div> <button type="submit">提交留言</button> </form> <!-- 留言展示区域 --> <div id="messagesContainer"></div> </div> <script> // 初始化留言数组 (实际应用中应使用后端数据库) let messages = JSON.parse(localStorage.getItem('messages')) || []; // 表单提交处理 document.getElementById('messageForm').addEventListener('submit', function(e) { e.preventDefault(); const name = document.getElementById('name').value.trim(); const content = document.getElementById('message').value.trim(); if(name && content) { // 创建新留言对象 const newMessage = { id: Date.now(), // 使用时间戳作为ID name: name, content: content, timestamp: new Date().toLocaleString() }; // 添加到数组并更新显示 messages.unshift(newMessage); saveMessages(); displayMessages(); // 清空表单 document.getElementById('messageForm').reset(); } }); // 保存到本地存储 function saveMessages() { localStorage.setItem('messages', JSON.stringify(messages)); } // 显示所有留言 function displayMessages() { const container = document.getElementById('messagesContainer'); container.innerHTML = ''; if(messages.length === 0) { container.innerHTML = '<p>暂无留言</p>'; return; } messages.forEach(msg => { const msgElement = document.createElement('div'); msgElement.className = 'message'; msgElement.innerHTML = ` <div class="message-header">${msg.name}</div> <div class="message-time">${msg.timestamp}</div> <div class="message-content">${msg.content}</div> `; container.appendChild(msgElement); }); } // 初始加载留言 displayMessages(); </script> </body> </html> ``` ### 功能说明: 1. **留言提交**: - 输入姓名和内容后提交 - 使用HTML5表单验证确保必填字段 - 自动记录提交时间 2. **数据存储**: - 使用`localStorage`保存留言数据 - 刷新页面后数据不丢失 - 数据格式为JSON数组 3. **留言显示**: - 按时间倒序排列(最新留言在最前面) - 显示留言者姓名、时间和内容 - 自动响应式布局 4. **用户体验**: - 简洁现代的界面设计 - 表单提交后自动重置 - 友好的错误处理 ### 扩展建议: 1. 添加留言删除功能 2. 实现后端存储(PHP/Node.js等) 3. 增加留言分页显示 4. 添加留言过滤/搜索功能 5. 集成用户认证系统 这个示例完全使用前端技术实现,可直接保存为HTML文件在浏览器中运行。实际部署时建议添加后端支持以实现数据持久化和安全性[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mind_programmonkey

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值