Css пытается сделать первый символ в поле ввода в верхнем регистре

Вопрос:Я пытаюсь сделать первый символ в верхнем регистре ввода. До сих пор я пробовал: input:first-letter {text-transform:capitalize !important} input:first-letter {text-transform:uppercase !important} Я также попытался создать поле ввода display:block; и display:inline-block;, но не повезло. Я использую последнюю версию хром. Если я посмотрю в инспекторе input:first-letter {text-transform:capitalize !important} is flagged to be active but it does not work.

Вопрос:

Я пытаюсь сделать первый символ в верхнем регистре ввода.

До сих пор я пробовал:

input:first-letter {text-transform:capitalize !important} input:first-letter {text-transform:uppercase !important}

Я также попытался создать поле ввода display:block; и display:inline-block;, но не повезло.

Я использую последнюю версию хром. Если я посмотрю в инспекторе

input:first-letter {text-transform:capitalize !important} is flagged to be active but it does not work.

Я открыт для любых решений JQuery, а также

Спасибо,

Лучший ответ:

:first-letter не будет работать в поле ввода. но он работает без этого.

Так измените его как input {text-transform:capitalize;}, он отлично работает. см. демонстрацию

он отлично работает без !important

input {text-transform:capitalize;}<input/>

Как вы упомянули в чистом css-способе, я добавил вышеописанный метод

Ограничение: Он будет использовать все слова в поле ввода. В чистом CSS на данный момент невозможно загладить только первое слово. вы должны попробовать jquery способ сделать это, как указано ниже

Использование jquery: –

с помощью события keyup

$(‘input’).keyup(function(){ if($(this).val().length>0){ var character = $(this).val().charAt(0); if(character!=character.toUpperCase()){ $(this).val($(this).val().charAt(0).toUpperCase()+$(this).val().substr(1)); } } });<script src=»https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js»></script> <input/>

Чтобы работать даже с событиями мыши: – (например, вырезать пасту в мыши)

Использование события changechange на $(‘input’).bind(‘input propertychange’, function() {

$(‘input’).bind(‘input propertychange’, function() { if($(this).val().length>0){ var character = $(this).val().charAt(0); if(character!=character.toUpperCase()){ $(this).val($(this).val().charAt(0).toUpperCase()+$(this).val().substr(1)); } } });<script src=»https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js»></script> <input/>Ответ №1

Вы можете использовать прослушиватель onKeypress и заглавные буквы первого символа значения. Помните, что эта функция будет запускаться каждый раз, когда нажата клавиша в input

$( «#keypress» ).keypress(function() { var val = $(this).val(); val = val.substr(0, 1).toUpperCase() + val.substr(1); $(this).val(val); });<script src=»https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js»></script> <input id=»keypress»>

Оцените статью
Добавить комментарий