使用对角线缩进显示段落的文本
我想知道是否有一种方法可以显示带有对角线缩进的段落文本,就像这样!
请记住,此文本是用WYSIWYG编辑器(包含html标签)编写的。
我在想是否有办法计算段落中除了html标签之外的单词,然后制作一些方程式来增加jQuery或Javascript每行的文本缩进。
有什么建议吗?
使用CSS有一种非常简单的方法。 创建一个列表。 然后使用li :: before将左侧填充添加到列表项。 将li :: before元素设置为一个向左浮动的高大的瘦块。 每个人都会为其父列表项及其下面的所有项创建左侧边距。
像这样:
li::before { content: ""; display: block; float: left; height: 50px; width: 10px; }
- sancti et dilecti
- viscera misericordiae
- benignitatem
- humilitatem
- modestiam
- patientiam
- caritatem
经过多次搜索后,我发现了一些有用的东西http://www.csstextwrap.com/examples.php我认为经过一些修改后它符合我的要求。 感谢您的高度赞赏回复。
要计算段落中除HTML标记之外的单词数,请使用:
$tagless_content=strip_tags($content); str_word_count($tagless_content);
更新
这是通过jQuery增加text-indent的代码
jQuery.fn.stripTags = function() { return this.replaceWith( this.html().replace(/<\/?[^>]+>/gi, '') ); };
然后使用String.length
JavaScript属性
var len = $('').stripTags().length(); for(var i=0;i').css('text-indent',+i+'px');
参考
- 通过jQuery剥离标签
-
strip_tag
PHP函数 -
str_word_count
PHP函数
你可以扭曲包含div
.holder{ transform:skew(-40deg); } Just Like This!
然后忽略它里面的每个单词。
.rotate { transform: skew(40deg); }
我所知道的并没有直接的解决方案,因为当你越来越多地缩进文本的每一行时,每行所占用的空间长度将减少,从而创建新行。
例如:
TEXTTEXTTEXTTEXT TEXTTEXTTEXTTEXT TEXTTEXTTEXTTEXT TEXTTEXTTEXTTEXT TEXTTEXTTEXTTEXT
后缩进:
TEXTTEXTTEXTTEXT TEXTTEXTTEXTTEX T TEXTTEXTTEXTTE XT TEXTTEXTTEXTT EXT TEXTTEXTTEXT TEXT
如果(1)您正在处理由于自动换行而创建的行,以及(2)如果您一次检测到所有行然后执行所有缩进(而不是更新
的算法),则会出现此问题如果字体系列是单倍间距字体,则可以调整。
最好的情况是这些是
终止行,在这种情况下,这将是非常容易的。
使用单倍间距字体会更难做到这一点。
最糟糕的情况,如上所述,需要搜索没有缩进的第一行,然后缩进它,更新
的文本,然后重复该过程,直到文本完全通过或者数量为压痕超过
宽度。
我建议再次提出你的问题,提供以下信息: – 这些行是用
标签终止的,还是用字包装的? 如果是自动换行,字体是单倍间距还是可变宽度?