我想在我的博客上创建我的帖子和页面的首字母和首字。事情是这样的:首字母和单词在jekyll帖子和页面
:not(.post-excerpt) > .initial-word {
color: #166079;
font-variant: small-caps;
font-weight: bold;
}
:not(.post-excerpt) > .initial-word .initial-letter {
float: left;
font-size: 3.15em;
line-height: 0.5;
margin: 0.225em 0.159em 0 0;
color: #166079;
font-weight: normal;
text-transform: uppercase;
}
<p>
<span class="initial-word"><span class="initial-letter">L</span>orem</span> ipsum dolor sit amet
</p>
给出一个杰基尔后开始的介绍文字:
我可以用下面的风格和span
标签达到这个结果
Lorem ipsum dolor sit amet
# Main title of the post
Lorem ipsum dolor sit amet
帖子的内容,在通过液体码{{ content }}
我的布局访问将是这样的:
<p>Lorem ipsum dolor sit amet</p>
<h1>Main title of the post</h1>
<p>Lorem ipsum dolor sit amet</p>
我想修改后的内容加我span
标签符合下列要求:
- 初始标签只能添加到引言中;如果内容不是以
p
标签开头,我不希望他们,我只希望他们在第一段。 的
<span class="initial-word">
标签可以直接在后用于封装一个以上的字,这样的:<span class="initial-word">Lorem ipsum</span> dolor sit amet # Main title of the post Lorem ipsum dolor sit amet`
在这样的情况下,只有<span class="initial-letter">
应添加。
我结束了上岗此复杂的代码:
{% assign content_start=content | slice: 0, 3 %}
{% assign tokens=content | split: '<span class="initial-word">' %}
{% assign count=tokens | size %}
{% if content_start == "<p>" or count > 1 %}
{% if count > 1 %}
{% assign tokens=tokens[1] | split: "</span>" %}
{% assign initial_word=tokens[0] %}
{% else %}
{% assign initial_word=content | remove_first: "<p>" | truncatewords: 1, "" %}
{% endif %}
{% assign initial_letter=initial_word | slice: 0 %}
{% assign span_letter=initial_letter | prepend: '<span class="initial-letter">' | append: '</span>' %}
{% assign span_word=initial_word | replace_first: initial_letter, "" | prepend: span_letter %}
{% unless count > 1 %}
{% assign span_word=span_word | prepend: '<span class="initial-word">' | append: '</span>' %}
{% endunless %}
{% assign content=content | replace_first: initial_word, span_word %}
{% endif %}
并有相似,但略有不同的版本的页面。有人有任何暗示以更简单的方式做到这一点吗?我失踪的一些魔术过滤器?
的第::个字母的选择只能与块级元素,这是不符合我最初的字:) – wasthishelpful
兼容使用,但你给了我一个想法:我可以将“initial-p”类添加到开始的“p”标签。这将简化问题,并允许我使用::首字母 – wasthishelpful
所以我误解了一些东西:) –