Comments 56
Добро пожаловать на хабр!
Демку еще хотелось бы к статье :)
Демку еще хотелось бы к статье :)
+6
Поправте, стили для Firefox. Там лишнее двоеточее #field2::-moz-placeholder вместо #field2:-moz-placeholder.
0
где там?
-3
Пример не мой, так что не могу.
0
Вообще, это не лишнее двоеточие, а синтаксис псевдоэлементов в CSS3 — www.w3.org/TR/css3-selectors/#pseudo-elements
Два двоеточия были введены чтобы различать псевдоэлементы от псевдоклассов, хотя для псевдоэлементов из CSS2 можно по преднему использовать и одно двоеточие в рамках обратной совместимости. Но при этом для новых, введённых в CSS3, псевдоэлементов в спецификации запрещают использовать одно двоеточие.
Два двоеточия были введены чтобы различать псевдоэлементы от псевдоклассов, хотя для псевдоэлементов из CSS2 можно по преднему использовать и одно двоеточие в рамках обратной совместимости. Но при этом для новых, введённых в CSS3, псевдоэлементов в спецификации запрещают использовать одно двоеточие.
0
Судя по поддержке атрибута placeholder браузерами придется и дальше эмулировать его при помощи Jquery (ну или аналогов).
+4
Так собсно никаких jQuery:
-1
Хабр, зараза, съедает скопипасченный код, так что дам ссылку
forum.aceweb.ru/index.php?showtopic=2812
forum.aceweb.ru/index.php?showtopic=2812
-1
там только не хватает обработки события submit, чтобы при валидации форма не считалась заполненной, и плейсхолдер не отсылался на сервер
0
UFO just landed and posted this here
Для тех, кто так подумает, это не обернется таким уж злом.
-1
UFO just landed and posted this here
Будет полезным поводом, чтобы понять: «Не клепай готовые примеры, учи язык!»
-1
В этом примере больше недостатков, чем пользы.
Необходимость обработки сабмит (и совпадения всех default значений в HTML и обработчике, что особенно весело, когда форм много и все с локализацией)
Невозможность ввести default значение
Невозможно отличить по внешнему виду, было уже что-то введено или нет
Некорретная работа с password полями
Такие примеры — издевательство над пользователями, которые обязательно столкнутся со всем вышеперечисленным, но уже потом :)
Необходимость обработки сабмит (и совпадения всех default значений в HTML и обработчике, что особенно весело, когда форм много и все с локализацией)
Невозможность ввести default значение
Невозможно отличить по внешнему виду, было уже что-то введено или нет
Некорретная работа с password полями
Такие примеры — издевательство над пользователями, которые обязательно столкнутся со всем вышеперечисленным, но уже потом :)
0
Честно говоря я уже отвык писать код, как представлено у Вас по ссылке.
Посмотрите на возможную реализацию на Jquery:
predvoditelev.ru/page/placeholder_for_input_and_textarea
Посмотрите на возможную реализацию на Jquery:
predvoditelev.ru/page/placeholder_for_input_and_textarea
0
хммм, а почему у меня получалось стилизовать просто через input.placeholder?
А так да, очень православный атрибут. А альтернативно одаренные браузеры начинают работать за счет небольшой jQuery оплетки.
А так да, очень православный атрибут. А альтернативно одаренные браузеры начинают работать за счет небольшой jQuery оплетки.
+1
Может вы работали со скриптовой эмуляцией placeholder'а, а не с нативным?
+1
Судя по таблице Firefox 4 и Safari 5 шагают в ногу со временем.
Когда наконец сделает один нормальный браузер для всех. Хотя везде свои плюсы и минусы.
Когда наконец сделает один нормальный браузер для всех. Хотя везде свои плюсы и минусы.
-2
Технически, Firefox и Safari предлагают разные (и несовместимые) варинты расширения CSS, ни один из которых пока не является стандартным. В первом случае это псевдокласс, во втором пресевдоэлемент.
Так что и ноги разные, и не в ногу со временем, а предлагая решения на будущее. (см. также обсуждение в рабочей группе по CSS lists.w3.org/Archives/Public/www-style/2011Apr/0240.html — и последующие ответы).
Так что и ноги разные, и не в ногу со временем, а предлагая решения на будущее. (см. также обсуждение в рабочей группе по CSS lists.w3.org/Archives/Public/www-style/2011Apr/0240.html — и последующие ответы).
0
мне кажется, что только через 4 года можно будет пользоваться этим атрибутом и не беспокоиться о совместимости.
Хотя если вспомнить историю с IE6, то вообще через 10 лет.
Хотя если вспомнить историю с IE6, то вообще через 10 лет.
0
Спасибо, уже давно хотел иметь возможность изменять хотя бы цвет текста плейсхолдера, а тут, оказывается, такие возможности! Ну, по крайней мере, в теории :-)
0
twitter.com/#!/pepelsbey/statuses/69750086141345792
-5
Опера смешная, реализовала нативную поддержку плейсхолдера, но не реализовала ни одного способа его стилизации. При том, что джаваскриптовые обертки зачастую детектят нативную поддержку и отключаются.
-1
Т.е. по вашему, браузер, который реализовал, например, overflow: scroll, обязан реализовать способ стилизации скролбаров?
0
Нет, по-моему, браузер, который реализовал плейсхолдер, обязан реализовать способы стилизации этого плейсхолдера. Ибо нестилизуемый плейсхолдер хуже чем полное отсутствие плейсхолдера.
0
UFO just landed and posted this here
значит хреновые обертки, если не учитывают специфику различных браузеров.
0
Не было никакой специфики до выхода оперы 11. Были браузеры, которые поддерживали плейсхолдер и поддерживали его стилизацию, а были браузеры, которые не поддерживали плейсхолдер. Поэтому ни одна обертка даже не заморачивалась никакой «спецификой». Либо фигачили эмуляцию везде не глядя, либо делали так:
А потом появилась опера и все сломала. Пришлось сразу писать для нее отдельные костыли, что усложнило весьма простой изначально код.
if ('placeholder' in document.createElement('input')) { ... }
А потом появилась опера и все сломала. Пришлось сразу писать для нее отдельные костыли, что усложнило весьма простой изначально код.
0
Но в этом случае может случиться и так, что пользователь может подумать, что, например «name@example.com» — это уже введённая информация и попытается её выделить (а это у него, естественно, не получится) — в общем возможно лёгкое помешательство.
В этом случае, думаю, будет неплохо изменять цвета плейсхолдера на менее контрастные при фокусировке на поле (видел довольно много подобных реализаций, но где конкретно — сейчас не вспомню). Такой приём почти полностью исключит двоякое толкование плейсхолдера.
В этом случае, думаю, будет неплохо изменять цвета плейсхолдера на менее контрастные при фокусировке на поле (видел довольно много подобных реализаций, но где конкретно — сейчас не вспомню). Такой приём почти полностью исключит двоякое толкование плейсхолдера.
+7
Обычно смотришь на второе поле и уже исходя из него определяешь, что вводить нужно. Звучит сложно, но происходит за секунду всё это в голове :)
0
Второе? А если их 10, куда смотреть, чтобы понять, что нужно вводить в текущее?
0
Я имел ввиду пример выше «логин — пароль». Вообще, мне больше нравится когда при установки курсора подсказка исчезает, так что думаю, что всё это дело вкуса в какой-то мере.
0
Это дело не вкуса, удобства пользования. В вашем случае что бы посмотреть, что нужно вводить в поле, где находится курсор, его нужно убрать, потом вернуть.
0
такой эффект можно получить с помощью jq-watermark
0
где-то видел пример, где при фокусе плейсхолдер отъезжает влево и становится обычным лейблом к инпуту. прикольно смотрится и понятно.
0
UFO just landed and posted this here
Sign up to leave a comment.
Стилизация HTML5 плейсхолдера с помощью CSS