问题:
如何有选择地定位和样式化文本行文档中的特定文本行? :first-line CSS 伪元素允许您定位第一行,但是有没有办法选择任意行?
JavaScript 解决方案:
Since CSS单独无法实现这一点,需要 JavaScript 解决方案。考虑以下方法:
$(function() { var p = $('p'); var words = p.text().split(' '), text = '', line = 0; $.each(words, function(i, w) { if ($.trim(w)) text += '<span>' + w + '</span> '; }); p.html(text); $(window).resize(() => { var prevTop = -15; $('span', p).each(function() { var top = $(this).offset().top; if (top !== prevTop) { prevTop = top; line++; } $(this).attr('class', 'line' + line); }); }); $(window).resize(); });
解释:
此解决方案动态地将每个单词包装在一个 span 元素中,并根据其为每个 span 分配一个线类。位置。调整窗口大小时,脚本会调整线条类以确保正确识别每条线。
如何使用:
附加说明:
以上是如何使用 JavaScript 和 CSS 有选择地设置特定文本行的样式?的详细内容。更多信息请关注PHP中文网其他相关文章!