You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:React实现类似Google Keep的内容尺寸适配网格布局

React实现Google Keep风格卡片网格布局方案

核心CSS布局实现

Google Keep的卡片网格核心特点是自适应列数,卡片宽度有最小限制,自动填充整行,高度随内容动态变化。用CSS Grid就能快速实现:

.keep-grid {
  display: grid;
  /* 最小宽度240px,空间足够时自动拉伸,auto-fill自动适配列数 */
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  /* 行列间距 */
  gap: 16px;
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

.keep-card {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.15);
  padding: 16px;
  /* 最小高度保证卡片不会太窄,高度随内容自动扩展 */
  min-height: 100px;
  transition: box-shadow 0.2s ease;
}

.keep-card:hover {
  box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}

.keep-card-title {
  font-weight: 500;
  margin-bottom: 8px;
  font-size: 1rem;
}

.keep-card-content {
  color: #5f6368;
  font-size: 0.9rem;
  line-height: 1.4;
}

React组件示例

结合React封装卡片列表组件,直接复用上面的样式:

import React from 'react';
import './KeepGrid.css'; // 引入编写好的CSS文件

const KeepCards = ({ notes }) => {
  return (
    <div className="keep-grid">
      {notes.map(note => (
        <div key={note.id} className="keep-card">
          <div className="keep-card-title">{note.title}</div>
          <div className="keep-card-content">{note.content}</div>
        </div>
      ))}
    </div>
  );
};

// 组件使用示例
const App = () => {
  // 模拟笔记数据
  const sampleNotes = [
    { id: 1, title: '购物清单', content: '牛奶、面包、鸡蛋、苹果' },
    { id: 2, title: '会议要点', content: '1. 项目进度汇报\n2. 下周任务分配\n3. 需求变更讨论' },
    { id: 3, title: '学习笔记', content: 'React Hooks核心:useState、useEffect、useContext' },
    { id: 4, title: 'TODO', content: '完成组件封装\n提交PR\n测试响应式布局' },
  ];

  return <KeepCards notes={sampleNotes} />;
};

export default App;

额外优化建议

  • 移动端适配:通过媒体查询调整小屏设备的列宽和间距:
@media (max-width: 600px) {
  .keep-grid {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    padding: 12px;
    gap: 12px;
  }
}
  • 可编辑功能:如果需要双击编辑卡片,可给内容区域添加contenteditable属性,或用React状态切换输入框显示。
  • 拖拽排序:要实现卡片拖拽重排,可集成react-beautiful-dnd库快速实现。

内容的提问来源于stack exchange,提问作者Sanidhya Sahu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 18:43:20