Css 大多数情况下,这根本不是OP想要的。他希望输出的单词只有首字母大写;不是整个字符串。在你没有察觉到的问题中有一个细微差别:文本转换:大写不会更改已经全部大写的文本。再次查看问题:用户已经尝试过了。然后可以使用span标记拆分他们想要的单词所有大写和小写。它

Css 大多数情况下,这根本不是OP想要的。他希望输出的单词只有首字母大写;不是整个字符串。在你没有察觉到的问题中有一个细微差别:文本转换:大写不会更改已经全部大写的文本。再次查看问题:用户已经尝试过了。然后可以使用span标记拆分他们想要的单词所有大写和小写。它,css,Css,大多数情况下,这根本不是OP想要的。他希望输出的单词只有首字母大写;不是整个字符串。在你没有察觉到的问题中有一个细微差别:文本转换:大写不会更改已经全部大写的文本。再次查看问题:用户已经尝试过了。然后可以使用span标记拆分他们想要的单词所有大写和小写。它就像一个符咒,谢谢!,顺序很重要,带:首字母的行必须在小写行之后。这似乎需要。链接元素显示为块元素。(显示:内联块;)思维敏捷,做得好。做得很好的托林指出了“显示:内联块”。但它并没有产生想要的结果。它只将元素的第一个字母大写,而问题要求将每个



大多数情况下,这根本不是OP想要的。他希望输出的单词只有首字母大写;不是整个字符串。在你没有察觉到的问题中有一个细微差别:
文本转换:大写不会更改已经全部大写的文本。再次查看问题:用户已经尝试过了。然后可以使用span标记拆分他们想要的单词所有大写和小写。它就像一个符咒,谢谢!,顺序很重要,带:首字母的行必须在小写行之后。这似乎需要。链接元素显示为块元素。(显示:内联块;)思维敏捷,做得好。做得很好的托林指出了“显示:内联块”。但它并没有产生想要的结果。它只将元素的第一个字母大写,而问题要求将每个单词的第一个字母大写。它可以产生“所有上限”,但“所有上限”是必需的@manpreethingh是正确的,这就是为什么我说它几乎可以工作的原因。这可能不完全是问题所问的,但通常您的规范是灵活的,更简单的解决方案更可取。在我的情况下,我可以直接执行
${fn:toLowerCase(some.key)}
,而不必使用
fmt:message
。谢谢,是的。我迭代了模型中的项目,并将它们转换为小写,如myArray[I].firstName=myArray[I]firstName.toLowerCase(),然后在css中,文本转换:capitalizeOP没有提到JS。感谢您的输入,但问题并没有限制css的方法。您能删除@jduartdj否决票吗?同样,我的回答与所提出的问题是一致的。若你们看到了被选为答案的内容,那个么答案也会使用JavaScript,甚至jQuery。谢谢。我不认为OP使用jQuery。这不是OP所要求的,也不是小号的。这个答案不是建设性的,尽管它解释了OP出现问题的原因。@jduartdj我认为了解问题的根源很重要,这就是问题的原因。Capitalialize不规范化字符串,只获取第一个项并将其转换为大写字母。我发现这些信息确实有用您的
(不工作)
示例可以通过添加
display:inline块来工作
.link
样式。如果所有字母最初都是大写字母,那么通过css就可以很好地解决问题
<a href="#" class="link">small caps</a> & 
<a href="#" class="link">ALL CAPS</a>
.link {text-transform: capitalize;}
Small Caps & ALL CAPS
Small Caps & All Caps
$text = "ALL CAPS";
$text = ucwords(strtolower($text)); // All Caps
// Uppercase every first letter of a word
jQuery.fn.ucwords = function() {
  return this.each(function(){
    var val = $(this).text(), newVal = '';
    val = val.split(' ');

    for(var c=0; c < val.length; c++) {
      newVal += val[c].substring(0,1).toUpperCase() + val[c].substring(1,val[c].length) + (c+1==val.length ? '' : ' ');
    }
    $(this).text(newVal);
  });
}

$('a.link').ucwords();​
Small Caps
All Caps
var links = document.getElementsByClassName("link");
for (var i = 0; i < links.length; i++) {
  links[i].innerHTML = links[i].innerHTML.toLowerCase();
}
.link { text-transform: capitalize; }
<fmt:message key="some.key" var="item"/>
<div class="content">
  <a href="#">${fn:toLowerCase(item)}</a>
</div>
.content {
  text-transform:capitalize;
}
a {display:inline-block; text-transorm:uppercase;}
a::first-letter {font-size:50px;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#edit-submitted-first-name,#edit-submitted-last-name,#edit-submitted-company-name, #edit-submitted-city").focusout(function(){
var str=$(this).val();
str = str.toLowerCase().replace(/\b[a-z]/g, function(letter) {
    return letter.toUpperCase();
});
$(this).val(str);
 });});

 </script>
<input type="text" id="edit-submitted-first-name" name="field name">
/(^[a-z]|\s[a-z])/g
$('.link').each(function() {
    $(this).css('text-transform','capitalize').text($(this).text().toLowerCase());
});
//Iterate all the elements in jQuery object
$('.link').each(function() {

    //get text from element and make it lower-case
    var string = $(this).text().toLowerCase();

    //set element text to the new string that is lower-case
    $(this).text(string);

    //set the css to capitalize
    $(this).css('text-transform','capitalize');
});
$string = `UPPERCASE`
$lowercase = strtolower($string);
echo ucwords($lowercase);