我希望添加填充到最后一行的填充元素只。我有下面的html使用Tailwind类:
<div className="my-3 max-h-[4.5rem] relative">
<p ref={ref} className="inline-block line-clamp-3 pr-14">{data.description}</p>
<button className="text-blue-600 leading-none absolute bottom-[-4px] right-0 font-medium px-2 py-1" onClick={() => setOpen(true)}>
more
</button>
</div>
右填充pr-14
应用于整个p
标记。我怎样才能让它只应用到最后一行?我试过block
,inline
等,它们似乎都没有区别。这在CSS中可能吗?
对于上下文,当我需要显示“更多”按钮时,我试图在最后一行添加填充。我能想到的唯一替代方法是做一些类似下图的事情,但不确定如何将文本淡入背景(我不能将背景应用于more
背景,因为它是透明的)。
6条答案
按热度按时间u3r8eeie1#
一个伪元素可以做到这一点。
balp4ylt2#
多线箝位只适用于
display: -webkit-box;
,这就是为什么你不能应用其他display
属性。你可以使用一个面具的形象与复合材料,以获得你想要的。不用担心背景颜色不匹配等问题:
https://codepen.io/umbriel/pen/ZEKYqvr
我敢说这是一个相当恶心的解决方案。但要按盒子上说的做。
9ceoxa923#
我假设你想在最后一行应用填充。也许你可以试试这个办法
在关闭p标签之前,你可以添加inline-block div width 1 Px和padding。
cwxwcias4#
Temani的答案已被证明是理想的,例如在聊天框的末尾分配一个“间隔符”,以放置额外的数据并确保聊天文本不会与额外的数据冲突:
示例:
HTML:
CSS:
ztmd8pv55#
目前,没有CSS选择器可以应用。
只能使用伪元素选择第一行:first-line。不幸的是,目前还没有最后一行的等价物。
也许,一些JavaScript或jQuery插件可以处理这个问题。
0ejtzxu16#
尝试使用这个例子,你需要插件定义使用线钳
添加Line-Clamp插件即可使用
tailwind示例
顺风Playgroundhttps://play.tailwindcss.com/ILpf8grjdF