我想知道是否有任何方法只使用CSS(并且这可以是特定于浏览器的CSS)将所有大写文本转换为仅最初大写的单词,例如:
I YELL WITH MY KEYBOARD
将转换为:
I Yell With My Keyboard
编辑:我意识到我在我的问题中不够清楚,文本输入大写,而不是最初的小写,文本转换:大写不适用于这样输入的数据。
答案 0 :(得分:9)
使用CSS进行文本转换可以做一些事情,这就是所有这些。
.Capitalize
{ text-transform: capitalize }
.Uppercase
{ text-transform: uppercase }
.Lowercase
{ text-transform: lowercase }
.Nothing
{ text-transform: none }
不幸的是没有Camel Case文本转换。
您可以随时使用Javascript来适当地转换文本,或者如果您使用的是脚本语言(如PHP或ASP),则可以在其中进行更改。
以下是来自strtoupper PHP文档页面的示例:
function strtocamel($str, $capitalizeFirst = true, $allowed = 'A-Za-z0-9') {
return preg_replace(
array(
'/([A-Z][a-z])/e', // all occurances of caps followed by lowers
'/([a-zA-Z])([a-zA-Z]*)/e', // all occurances of words w/ first char captured separately
'/[^'.$allowed.']+/e', // all non allowed chars (non alpha numerics, by default)
'/^([a-zA-Z])/e' // first alpha char
),
array(
'" ".$1', // add spaces
'strtoupper("$1").strtolower("$2")', // capitalize first, lower the rest
'', // delete undesired chars
'strto'.($capitalizeFirst ? 'upper' : 'lower').'("$1")' // force first char to upper or lower
),
$str
);
}