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

如何用HTML、CSS和JavaScript制作Scrabble游戏?网格边框实现遇阻

解决Scrabble游戏网格的CSS Grid边框问题

用CSS Grid实现带边框的Scrabble网格

CSS Grid本身没有专门的border属性,但可以通过**容器背景色+网格间隙(gap)**的方式快速实现规整的网格线,完全能满足Scrabble棋盘的需求,而且比表格更灵活:

核心思路

  1. 给网格容器设置背景色(作为网格线颜色)
  2. 使用gap属性定义网格线的宽度
  3. 给容器加1px内边距,补齐边缘的网格线
  4. 每个网格单元格设置背景色,与容器背景形成对比

完整代码示例

<div class="scrabble-board">
  <!-- 可通过JS循环生成15x15单元格,示例展示部分 -->
  <div class="cell tw">TW</div>
  <div class="cell"></div>
  <div class="cell dl">DL</div>
  <div class="cell"></div>
  <div class="cell dw">DW</div>
  <!-- ... 剩余220个单元格 -->
  <div class="cell center">★</div>
</div>
.scrabble-board {
  display: grid;
  /* 15列15行,每个单元格40px */
  grid-template-columns: repeat(15, 40px);
  grid-template-rows: repeat(15, 40px);
  /* 网格线宽度1px */
  gap: 1px;
  /* 网格线颜色 */
  background-color: #222;
  /* 补齐边缘的网格线 */
  padding: 1px;
}

.cell {
  /* 单元格背景色 */
  background-color: #fff;
  /* 文字居中 */
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: bold;
}

/* 不同加分单元格的样式 */
.cell.tw { background-color: #ff6b6b; color: #fff; } /* 三倍单词分 */
.cell.dw { background-color: #ffd93d; } /* 两倍单词分 */
.cell.tl { background-color: #4ecdc4; color: #fff; } /* 三倍字母分 */
.cell.dl { background-color: #95e1d3; } /* 两倍字母分 */
.cell.center { background-color: #f38181; color: #fff; } /* 中心格 */

为什么Grid比表格更适合Scrabble

  1. 灵活的单元格定位:可以通过nth-child或JS动态给特定位置的单元格添加加分样式(比如第8行第8列的中心格),不需要嵌套tr/td,DOM结构更简洁
  2. 布局扩展性强:如果后续要在棋盘旁边添加得分面板、字母池等元素,Grid可以轻松整合进整体布局,表格则很难调整
  3. JS操作更便捷:生成单元格、修改单个单元格样式时,直接操作div比操作表格元素更简单

额外优化技巧

  • 如果需要给特定单元格加特殊边框(比如高亮当前选中格),可以直接给该单元格添加border样式,覆盖默认的间隙网格线
  • 用JS动态生成15x15的单元格,避免手动写225个div:
const board = document.querySelector('.scrabble-board');
for (let i = 0; i < 15 * 15; i++) {
  const cell = document.createElement('div');
  cell.classList.add('cell');
  // 定位中心格:第(7*15+7)个元素
  if (i === 7*15 +7) cell.classList.add('center');
  board.appendChild(cell);
}

内容的提问来源于stack exchange,提问作者MOHD ZAID

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 03:17:05