Comments 29
Спасибо за статью. Хорошая штука, usable.
Почему это бывает надо:
1. Заказчик так захотел
2. Дизайнер так нарисовал
Конечно, обоих этих людей можно бывает отговорить, но не всегда.
По поводу подставления логина — ну что ж поделать. Красота и удобство в этом случае не смогут уживаться.
1. Заказчик так захотел
2. Дизайнер так нарисовал
Конечно, обоих этих людей можно бывает отговорить, но не всегда.
По поводу подставления логина — ну что ж поделать. Красота и удобство в этом случае не смогут уживаться.
Я когда-то тоже пытался сделать что-то подобное, но потом решил, что без этого очень хорошо.
Удобство? Да для каждого интернет-серфера уже довно вошло в привычку видеть два поля рядом. Вот и все удобство.
Удобство? Да для каждого интернет-серфера уже довно вошло в привычку видеть два поля рядом. Вот и все удобство.
1. я не верю, что заказчика нельзя будет убедить в этом.
2. нахрен такого дизайнера, который на столько не ценит время коллеги программиста/верстальщика.
2. нахрен такого дизайнера, который на столько не ценит время коллеги программиста/верстальщика.
Предлагаю четвёртый вариант: прозрачный фон и надпись под инпутом.
«Сейчас стало очень модно делать формы, в которых заголовок поля для ввода написан в самом поле.»
— А я против такой моды. Имхо, надо писать стандартно — слева или сверху, а не внутри.
— А я против такой моды. Имхо, надо писать стандартно — слева или сверху, а не внутри.
1. IE можно заставить понять такой метод. Для этого перед изменением типа можно вытащить инпут из дом-дерева. А после изменения — вставить обратно.
А можете написать как вы это делаете? Чего-то у меня с ходу не получилось, вылазит обычная ошибка IE про атрибут type, даже если элемент вынут из дерева.
Не думаю что отыщу IE для тестов сейчас или кусок кода что сие делал.
Похожий подход я использовал в шаблонизаторе для JS. В том месте где надо было выдать инпут, вызывался следующий код:
Если поменять местами 2 и 3 строчку — выдается ошибка в IE.
В данном случае код вкратце должен быть такой:
Похожий подход я использовал в шаблонизаторе для JS. В том месте где надо было выдать инпут, вызывался следующий код:
var input = document.createElement('input')
input.type="sometype"
parentElement.appendChild(input)
Если поменять местами 2 и 3 строчку — выдается ошибка в IE.
В данном случае код вкратце должен быть такой:
var input = document.getElementById('login')
var parent = input.parentNode
var before = getNextNode(input) // тут мы берем ноду, что иджет за инпутом
parent.removeChild(input)
input.type='smth'
parent.insertBefore(input,before)
Хабралюди, пользуйтесь label!
Года два назад я прошёл весь этот путь, написал миниплагин на JS который для input'ов с определённым классом вставлял по дефолту значение соответствующего label'а. Написали слишком много вы. Причём большей частью вода-водой. Есть, например, такой вариант: сдвигать label на input и скрывать его по клику фокусу =) и кроссбраузерно и просто и JS минимум =)
Я скажу вам по секрету самый простой способ… background-image + hover, для IE6 подключить нужный хак или библиотеку и все счастливы и довольны :)
Sign up to leave a comment.
Как написать слово в поле для пароля так, что бы его было видно?