我正在寻找一种方法来创建一个幻灯片“显示更多”功能在我的响应网站,这切断后两行一个段落。
我以前用静态网站实现过这个,方法是给容器应用一个设定的高度并使用overflow: hidden
,然后动画化容器的高度。
但是作为响应,容器会以不同的浏览器宽度压缩文本,因此文本可能会占用更多/更少的空间,而且每次按下段落时,段落上方的内容可能会不同,因此设置height
可能不会正好覆盖两行。
请查看此jsFiddle:http://jsfiddle.net/XVAzU/(如果需要演示)。
所以我需要在段落的两行之后截断,不管容器有多宽,也不管在段落之前或之后出现什么。
感谢您的关注!
4条答案
按热度按时间k2fxgqgv1#
从您的小提琴开始,将内容 Package 到
<div>
中,默认类为content
,用于选择,类hideContent
将在单击show more/show less
链接时与showContent
交换。我还删除了文本所在的
<p>
。文本现在位于content-div中,我们现在也能够应用正确的高度和行高设置。超文本:
CSS:
我假设设置
line-height
将确保它在所有浏览器中是相同的,但我不能100%肯定。我使用jQueryUI switchClass()将一个click事件附加到“show more”链接,该链接切换div上的类:
JsFiddle Demo-显示更多/显示更少并应用行高和动画
一个一个三个一个一个一个一个一个四个一个一个一个一个一个五个一个
上面的代码只是一个例子,但是应该可以让你从正确的方向开始。
v09wglhw2#
如果你正在寻找一个只使用css的解决方案,看看这个:
超文本标记语言
//参数设置
示例:https://codepen.io/srekoble/pen/WGBzZa?editors=1100
2cmtqfgy3#
我解决这个问题的建议
z9zf31ra4#
我修改了前面的代码,使其不使用jQueryUI switchClass(),如下所示: