Эффект jquery-ui изменяет размер <input> при запуске эффекта
Я смотрю, чтобы запустить эффект jquery-UI под названием "встряхнуть" на входной тег:
$("#myInput").effect("shake");
Я дал входному тегу новый размер во включенном CSS-файле:
height: 25px;
width: 250px;
Эффект работает нормально, но во время эффекта тег ввода имеет размер по умолчанию, пока эффект не закончится. Затем он снова становится большим.
Где ошибка? Это ошибка в jquery-ui?
картинка во время эффекта.
2 ответа
Скорее всего, это связано с тем, что другой стиль CSS получает приоритет во время эффекта. См. http://jsfiddle.net/qhK96/1/ где фон становится красным во время анимации встряхивания.
div > input /* while not in animation */
div > div > input /* while in animation due to wrapping from jQuery, like ElendilTheTall said */
Решение легко: исправьте свой CSS. Звучит немного умно, извините, но нам нужно больше информации, чтобы указать вам на вашу проблему. В качестве первой попытки добавьте !important
чтобы определить высоту определения стиля или попробуйте установить высоту с помощью line-height.
У меня была такая же проблема, и я нашел решение. И да, я согласен с ElendilTheTall, что пользовательский интерфейс Jquery оборачивает цель и изменяет размеры, пока действует эффект. Итак, решение простое. Просто исправьте высоту и ширину HTML-элемента, добавив "! Важное" в CSS. Только то. Пользовательский интерфейс Jquery не сможет изменить размеры.