当前位置:首页 > uni-app

uniapp 2列布局

2026-03-05 11:46:28uni-app

uniapp 实现 2 列布局的方法

使用 Flex 布局

Flex 布局是最常用的方法之一,可以轻松实现两列布局。通过设置 display: flexflex-wrap: wrap,子元素会自动排列成两列。

<template>
  <view class="container">
    <view class="item" v-for="(item, index) in list" :key="index">
      {{ item }}
    </view>
  </view>
</template>

<style>
.container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.item {
  width: 48%;
  margin-bottom: 10px;
  background-color: #f0f0f0;
  padding: 10px;
  box-sizing: border-box;
}
</style>

使用 Grid 布局

CSS Grid 布局提供了更灵活的网格系统,适合复杂的布局需求。通过 display: gridgrid-template-columns 可以定义两列。

<template>
  <view class="grid-container">
    <view class="grid-item" v-for="(item, index) in list" :key="index">
      {{ item }}
    </view>
  </view>
</template>

<style>
.grid-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.grid-item {
  background-color: #f0f0f0;
  padding: 10px;
}
</style>

使用百分比宽度

通过设置子元素的宽度为 50%49%(留出间距),可以实现简单的两列布局。

<template>
  <view class="percent-container">
    <view class="percent-item" v-for="(item, index) in list" :key="index">
      {{ item }}
    </view>
  </view>
</template>

<style>
.percent-container {
  width: 100%;
}

.percent-item {
  width: 49%;
  float: left;
  margin-right: 2%;
  margin-bottom: 10px;
  background-color: #f0f0f0;
  padding: 10px;
  box-sizing: border-box;
}

.percent-item:nth-child(2n) {
  margin-right: 0;
}
</style>

使用 uni-rowuni-col 组件

uniapp 提供了 uni-rowuni-col 组件,可以快速实现栅格布局。

uniapp 2列布局

<template>
  <uni-row>
    <uni-col span="12" v-for="(item, index) in list" :key="index">
      <view class="col-item">
        {{ item }}
      </view>
    </uni-col>
  </uni-row>
</template>

<style>
.col-item {
  background-color: #f0f0f0;
  padding: 10px;
  margin: 5px;
}
</style>

注意事项

  • 确保父容器宽度足够,避免内容溢出。
  • 使用 box-sizing: border-box 防止内边距影响布局。
  • 在移动端适配时,可以通过媒体查询调整布局。

标签: 布局uniapp
分享给朋友:

相关文章

uniapp 壁纸

uniapp 壁纸

使用 Uniapp 开发壁纸应用的方法 实现壁纸展示与切换功能 在 Uniapp 中,可通过 swiper 组件实现壁纸轮播展示。结合 image 组件加载本地或网络壁纸资源,动态绑定 src 属性实…

投票 uniapp

投票 uniapp

uniapp 投票功能实现 uniapp 是一个基于 Vue.js 的跨平台开发框架,可以用于开发微信小程序、H5、App 等多种应用。实现投票功能需要结合前端界面和后端数据处理。 前端界面设计 使…

uniapp与vr

uniapp与vr

Uniapp与VR的结合方式 Uniapp作为跨平台开发框架,本身不直接支持VR开发,但可以通过以下方式实现与VR技术的结合: 使用WebXR API Uniapp可以调用WebXR API在H5端…

uniapp 字体设置

uniapp 字体设置

uniapp 字体设置方法 uniapp 中设置字体可以通过以下几种方式实现,适用于不同场景和需求。 全局字体设置 在 App.vue 文件中通过样式定义全局字体,确保所有页面继承该字体设置。…

uniapp公共弹窗

uniapp公共弹窗

uniapp公共弹窗的实现方法 在uniapp中实现公共弹窗通常涉及全局组件封装、状态管理以及动态调用。以下是几种常见方案: 封装全局组件 创建一个自定义弹窗组件(如common-popup.vue…

uniapp 插槽丢失

uniapp 插槽丢失

问题描述 在UniApp开发中,插槽(slot)内容可能因组件嵌套、条件渲染或动态加载等原因丢失或未正确渲染。 常见原因及解决方案 动态组件或条件渲染导致插槽丢失 使用v-if或动态组件时,父组件的…