当前位置:首页 > VUE

vue实现缩略div

2026-03-10 10:06:20VUE

Vue 实现缩略 Div 的方法

使用 CSS 控制文本溢出

通过 CSS 的 text-overflow 属性可以实现文本缩略显示,适用于单行或多行文本截断。

<template>
  <div class="truncate">
    {{ longText }}
  </div>
</template>

<style>
.truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 200px; /* 固定宽度 */
}
</style>

多行文本缩略

通过 -webkit-line-clamp 实现多行文本缩略。

<template>
  <div class="multiline-truncate">
    {{ longText }}
  </div>
</template>

<style>
.multiline-truncate {
  display: -webkit-box;
  -webkit-line-clamp: 3; /* 限制行数 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  width: 300px;
}
</style>

动态控制缩略与展开

结合 Vue 的 v-ifv-show 动态切换缩略和完整内容。

vue实现缩略div

<template>
  <div>
    <p v-if="isTruncated" class="truncate">{{ longText }}</p>
    <p v-else>{{ longText }}</p>
    <button @click="isTruncated = !isTruncated">
      {{ isTruncated ? '展开' : '收起' }}
    </button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      longText: '这是一段很长的文本...',
      isTruncated: true
    };
  }
};
</script>

使用第三方库

借助 vue-clampvue-text-clamp 等库实现更灵活的缩略功能。

安装 vue-clamp

vue实现缩略div

npm install vue-clamp

使用示例:

<template>
  <v-clamp :max-lines="2" autoresize>
    {{ longText }}
  </v-clamp>
</template>

<script>
import VClamp from 'vue-clamp';
export default {
  components: { VClamp },
  data() {
    return { longText: '很长很长的文本...' };
  }
};
</script>

响应式宽度缩略

通过计算属性动态调整缩略宽度,适应不同屏幕尺寸。

<template>
  <div class="responsive-truncate" :style="{ width: computedWidth }">
    {{ longText }}
  </div>
</template>

<script>
export default {
  data() {
    return {
      longText: '响应式缩略文本...',
      screenWidth: window.innerWidth
    };
  },
  computed: {
    computedWidth() {
      return this.screenWidth < 768 ? '150px' : '250px';
    }
  },
  mounted() {
    window.addEventListener('resize', () => {
      this.screenWidth = window.innerWidth;
    });
  }
};
</script>

<style>
.responsive-truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
</style>

标签: 缩略vue
分享给朋友:

相关文章

vue公共列表的实现

vue公共列表的实现

实现 Vue 公共列表组件 公共列表组件通常用于展示重复结构的数据,例如商品列表、用户列表等。以下是一个典型的实现方式: 基础实现 创建可复用的列表组件 List.vue: <tem…

vue实现活动倒计时

vue实现活动倒计时

实现活动倒计时的基本思路 在Vue中实现活动倒计时通常需要获取当前时间与活动结束时间的差值,并将其转换为天、小时、分钟、秒的格式展示。通过定时器每秒更新显示的时间。 定义倒计时数据 在Vue组件的d…

实现vue

实现vue

安装Vue.js 通过npm安装Vue.js是最常见的方式。确保已安装Node.js和npm,运行以下命令: npm install vue 或者使用CDN直接引入: <script src…

vue实现suspense

vue实现suspense

Vue 3 中实现 Suspense Suspense 是 Vue 3 引入的一个内置组件,用于处理异步依赖的加载状态。它允许在等待异步组件或异步数据加载时显示一个后备内容(fallback),直到异…

vue 菜单实现

vue 菜单实现

Vue 菜单实现方法 在Vue中实现菜单功能可以通过多种方式完成,以下是几种常见的实现方法: 使用v-for动态生成菜单 通过数据驱动的方式动态渲染菜单项,适合菜单内容可能变化的场景: <t…

vue实现pwa

vue实现pwa

Vue 实现 PWA 的步骤 Vue 结合 PWA(Progressive Web App)可以创建离线可用的 Web 应用。以下是实现方法: 安装 Vue CLI 并创建项目 确保已安装 Vue…