Ellipsis 的升级版 line-clamp

博客介绍了使用点点点的两种场景,一是单行内容超容器长度显示点点点,二是多行内容超既定行数时在最后一行用点点点替代未显示内容,并指出可通过特定CSS属性实现后一种需求。

使用场景:

通常情况下我们使用点点点只是针对一行的情况下;也就是说content只能是单行;当content的实际长度超过了容器的长度就用点点点来显示。如下图:

然而,有的需求要求内容允许换行,但行数有限,当行数超过既定的行数的时候,才在内容的最后一行用点点点来替代未显示的内容。如下图:

此时,下面的这个css属性可以帮助你实现这个需求:

-webkit-line-clamp: 2; // 该属性存在兼容性问题

转载于:https://www.cnblogs.com/juliazhang/p/11045250.html

<template> <div class="home"> <h1>欢迎来到简易书城</h1> <div class="book-grid"> <div v-for="book in bookStore.bookList" :key="book.id" class="book-card"> <div class="book-image-container"> <img :src="book.image || 'https://via.placeholder.com/150'" :alt="book.title" class="book-image"> </div> <h3 class="book-title">{{ book.title }}</h3> </div> </div> </div> </template> <script> import { useBookStore } from '../stores/book' import { books } from '../data/books' import { onMounted } from 'vue' export default { name: 'HomePage', setup() { const bookStore = useBookStore() onMounted(() => { if (bookStore.bookList.length === 0) { bookStore.loadBooks(books) } }) return { bookStore } } } </script> <style scoped> .home { padding: 20px; max-width: 1200px; margin: 0 auto; } .book-grid { display: grid; grid-template-columns: repeat(5, 170px); gap: 80px; margin-top: 20px; justify-content: center; } .book-card { width: 170px; border: 1px solid #eee; border-radius: 4px; overflow: hidden; transition: all 0.3s; text-align: center; padding: 10px; margin: 0 auto; } .book-card:hover { transform: scale(1.03); box-shadow: 0 4px 8px rgba(0,0,0,0.1); } .book-image-container { width: 170px; height: 240px; margin: 0 auto; display: flex; align-items: center; justify-content: center; overflow: hidden; } .book-image { width: 100%; height: 100%; object-fit: cover; } .book-title { margin: 10px 0; font-size: 16px; font-weight: bold; padding: 0 5px; height: 40px; display: flex; align-items: center; justify-content: center; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } </style> 调整上述代码修复以下错误 SyntaxError: The requested module '/src/data/books.js?t=1748425385932' does not provide an export named 'books'
05-29
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值