当前位置:首页 > JavaScript

js实现九宫格

2026-01-30 10:38:32JavaScript

实现九宫格的HTML结构

九宫格的基础结构可以通过HTML的div元素嵌套实现。外层容器定义整体布局,内层9个子元素排列为3x3网格。

<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>
</div>

使用CSS Grid布局

CSS Grid是实现九宫格最简洁的方式。通过display: grid定义网格容器,grid-template-columns设置每列宽度为均分。

.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  width: 300px;
  margin: 0 auto;
}

.grid-item {
  height: 100px;
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}

动态生成九宫格

通过JavaScript动态创建九宫格元素,适合需要灵活调整的场景。

const container = document.createElement('div');
container.className = 'grid-container';

for (let i = 1; i <= 9; i++) {
  const item = document.createElement('div');
  item.className = 'grid-item';
  item.textContent = i;
  container.appendChild(item);
}

document.body.appendChild(container);

添加交互功能

为九宫格添加点击事件,实现点击高亮效果。

document.querySelectorAll('.grid-item').forEach(item => {
  item.addEventListener('click', function() {
    this.style.backgroundColor = '#a0d8ef';
  });
});

响应式设计

通过媒体查询使九宫格适应不同屏幕尺寸。

@media (max-width: 600px) {
  .grid-container {
    width: 100%;
    grid-template-columns: repeat(3, 33.33%);
  }
  .grid-item {
    height: 80px;
  }
}

进阶样式优化

添加过渡动画和悬停效果提升用户体验。

.grid-item {
  transition: all 0.3s ease;
  cursor: pointer;
}

.grid-item:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

js实现九宫格

标签: 九宫格js
分享给朋友:

相关文章

js实现

js实现

JavaScript 实现方法 JavaScript 是一种广泛使用的编程语言,适用于网页开发、服务器端编程以及移动应用开发。以下是几种常见的 JavaScript 实现方法: 网页交互功能 使用…

vue实现九宫格首页

vue实现九宫格首页

Vue 实现九宫格首页 基础布局结构 使用 Vue 的模板语法结合 CSS Grid 或 Flexbox 实现九宫格布局。以下是一个基于 CSS Grid 的示例: <template>…

js实现继承

js实现继承

原型链继承 通过将子类的原型指向父类的实例实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Paren…

js实现选项卡

js实现选项卡

实现选项卡的基本思路 选项卡通常由一组标签和对应的内容面板组成。点击标签时,显示对应的内容面板,隐藏其他面板。实现这一效果需要结合HTML结构、CSS样式和JavaScript交互逻辑。 HTML…

js画图实现

js画图实现

使用Canvas API绘制图形 Canvas是HTML5提供的绘图API,通过JavaScript操作Canvas元素可以绘制各种图形。以下是一个简单的示例: <canvas id="myC…

js实现授权

js实现授权

授权流程设计 授权流程通常涉及前端与后端的交互,常见方案包括OAuth2.0、JWT等。以JWT为例的典型流程: 用户提交凭证(如用户名密码)到认证服务 服务端验证通过后生成包含用户信息的J…