使每个句子的第一个字母大写

时间:2017-12-22 15:34:39

标签: html css sass

我正在努力做这项工作。在我的HTML标记中,我有几个句子的段落。它只有以大写字母开头的新段落。但我想要的是多个句子以同一段落中的首字母开头。

有没有办法在没有js的情况下实现这一目标?我尝试了以下mixin:

@mixin sentence-case() {
  text-transform: lowercase;
  &:first-letter {
    text-transform: uppercase;
  }
}

我想说它应用于带有段落的类,并且该段落中的每个句子也都是大写的。

感谢

1 个答案:

答案 0 :(得分:2)

似乎是因为您可能在谈论SASS(基于问号标签)时使用SCSS语法。

在SASS中,mixin将被定义为:

-sentence-case()
  text-transform: lowercase

  :first-letter
    text-transform: uppercase


.sentenceCase
  +sentence-case()

在SCSS中,mixin定义为:

@mixin sentence-case() {
  text-transform: lowercase;

  &:first-letter {
    text-transform: uppercase;
  }
}

.sentenceCase {
  @include sentence-case();
}

在任何一种情况下,您都可以将.sentenceCase类分配给具有以下内容的元素:

<p class="sentenceCase"></div>

结果是:

&#13;
&#13;
.sentenceCase {
  text-transform: lowercase;
}
.sentenceCase:first-letter {
  text-transform: uppercase;
}
&#13;
<p class="sentenceCase">
our first sentance
</p>

<p class="sentenceCase">
our second first sentance
</p>
&#13;
&#13;
&#13;

但是,每个句子中每个首字母的附加要求应该大写,这对于这个混合是不可行的。目前没有CSS选择器可以选择句子中的每个第一个字母。