当前位置:首页 > uni-app

uniapp卡片代码

2026-03-05 06:41:32uni-app

以下是在UniApp中实现卡片布局的代码示例和关键方法,适用于常见场景如商品展示、信息卡片等:

基础卡片布局

使用view组件配合CSS实现基础卡片效果:

<template>
  <view class="card">
    <image class="card-image" src="/static/example.jpg" mode="aspectFill"></image>
    <view class="card-content">
      <text class="card-title">卡片标题</text>
      <text class="card-desc">这里是卡片描述内容,支持多行文本显示</text>
    </view>
  </view>
</template>

<style>
.card {
  width: 90%;
  margin: 20px auto;
  border-radius: 12px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  overflow: hidden;
  background-color: #fff;
}
.card-image {
  width: 100%;
  height: 200px;
}
.card-content {
  padding: 15px;
}
.card-title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 8px;
  display: block;
}
.card-desc {
  font-size: 14px;
  color: #666;
}
</style>

动态列表卡片

结合v-for渲染动态数据:

<template>
  <view v-for="(item, index) in cardList" :key="index" class="card">
    <image class="card-image" :src="item.imageUrl"></image>
    <view class="card-content">
      <text class="card-title">{{ item.title }}</text>
      <text class="card-price">¥{{ item.price }}</text>
    </view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      cardList: [
        { imageUrl: '/static/product1.jpg', title: '商品A', price: 99 },
        { imageUrl: '/static/product2.jpg', title: '商品B', price: 129 }
      ]
    }
  }
}
</script>

交互式卡片

添加点击事件和动画效果:

<template>
  <view 
    class="card" 
    @click="handleCardClick"
    :class="{ 'card-active': isActive }"
    hover-class="card-hover"
  >
    <!-- 卡片内容 -->
  </view>
</template>

<style>
.card-hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 16px rgba(0,0,0,0.15);
}
.card-active {
  border: 2px solid #007AFF;
}
</style>

<script>
export default {
  methods: {
    handleCardClick() {
      uni.showToast({ title: '卡片被点击' });
    }
  }
}
</script>

高级卡片特性

实现带操作按钮的卡片:

<view class="card-with-actions">
  <view class="card-main">
    <!-- 主要内容 -->
  </view>
  <view class="card-actions">
    <button size="mini" @click="handleAction1">操作1</button>
    <button size="mini" @click="handleAction2">操作2</button>
  </view>
</view>

<style>
.card-with-actions {
  position: relative;
  padding-bottom: 50px;
}
.card-actions {
  position: absolute;
  bottom: 0;
  width: 100%;
  display: flex;
  justify-content: space-around;
  padding: 10px;
  background-color: #f5f5f5;
}
</style>

关键注意点:

uniapp卡片代码

  • 使用box-shadow替代边框实现更好的视觉效果
  • 图片建议使用mode="aspectFill"保持比例
  • 圆角半径建议使用rpx单位适配不同屏幕
  • 复杂卡片可拆分为多个组件维护

标签: 卡片代码
分享给朋友:

相关文章

淘宝css代码制作

淘宝css代码制作

在淘宝店铺装修中,CSS代码用于自定义页面样式,提升视觉体验。以下是关键方法和注意事项: 自定义模块样式 通过淘宝旺铺的“自定义模块”功能,可以插入CSS代码。代码需包裹在<style>…

vue实现探探卡片

vue实现探探卡片

Vue 实现探探卡片效果 探探卡片的交互效果主要包括卡片堆叠、左右滑动、缩放和旋转动画。以下是基于 Vue 3 的实现方法: 核心组件结构 使用 v-for 渲染卡片列表,通过 CSS 绝对定位实现…

代码雨实现vue

代码雨实现vue

实现代码雨效果(Vue版) 使用Vue实现代码雨效果可以通过Canvas绘制结合动画帧实现。以下是完整实现方案: 核心代码结构 <template> <div class="c…

vue拖拽实现低代码

vue拖拽实现低代码

Vue拖拽实现低代码方案 基于现成库的方案(推荐) 使用成熟的拖拽库可以快速实现低代码功能,例如: vuedraggable:基于Sortable.js的Vue拖拽组件 vue-draggable-…

vue实现左右滑动代码

vue实现左右滑动代码

以下是一个基于 Vue 3 实现左右滑动功能的代码示例,结合手势识别和动画效果: 基础实现(使用 CSS 和事件监听) <template> <div class="slide…

react如何判断卡片的高度

react如何判断卡片的高度

判断卡片高度的方法 在React中,可以通过多种方式获取卡片元素的高度。以下是几种常见的方法: 使用useRef和useEffect钩子 通过useRef获取DOM节点的引用,结合useEffec…