Я хотел бы предложить решение с чистым CSS , которое более полезно, чем представленное решение по первой букве , но также очень похоже.
.link {
text-transform: lowercase;
}
.link::first-line {
text-transform: capitalize;
}
<div class="link">HELLO WORLD!</div>
<p class="link">HELLO WORLD!</p>
<a href="#" class="link">HELLO WORLD! ( not working )</a>
Хотя это ограничено первой строкой и исключает тег <a>
, оно может быть полезно для большего количества случаев использования, чем решение первая буква , поскольку оно применяет заглавные буквы ко всей строке, а не только к первой слово. (все слова в первой строке)
В конкретном случае ОП это могло бы решить.
Примечания: Как уже упоминалось в комментариях к решению по первой букве , порядок правил CSS важен! Также обратите внимание, что я изменил тег <a>
для тега <div>
, потому что по какой-то причине псевдоэлемент ::first-line
не работает с тегами <a>
, но с <div>
или <p>
все в порядке.
Новое примечание: , если текст обернут , он потеряет заглавные буквы, потому что теперь он фактически находится во второй строке (первая строка все еще в порядке).