Jump to content
  • 0

Как селектором адресовать пустой необязательный для заполнения input или textarea?


SilentImp
 Share

Question

Приятного дня.

Собственно сабж.

Как селектором адресовать пустой необязательный для заполнения input или textarea?

Мне нужно что бы представление пустых input и textarea отличалось от тех, в которые пользователь ввел текст и реализовать это хочется pure css.

Есть идеи?

[value=""] к сожалению не работает. Еще не разобрался почему.

:invalid требует required

Link to comment
Share on other sites

12 answers to this question

Recommended Posts

  • 0

Единственный вариант, который приходит на ум — поиграть со стилизацией атрибута placeholder (если верить этой таблице, в FF и Сафарях для него можно нарисовать рамку и фон). Но это от отчаяния и чисто ради принципа, о кроссбраузерности речи не идет.

К сожалению, CSS позволяет различать только ключевые состояния (чекнуто/не чекнуто, активно/не активно, валидно/не валидно и т.п.). А все значения необязательного поля (включая пустоту) абсолютно равноправны — для логики оформления это одно и то же состояние. Различие между такими значениями — это уже логика поведения/функциональности, и в скрипте ей самое место (как раз для этого там предусмотрены два DOM-свойства value и defaultValue, а не один атрибут value). Возможно, я ретроград, но на мой взгляд делать это скриптом не только удобнее, но и логичнее.

Link to comment
Share on other sites

  • 0

В тех браузерах, где стилизуется на уровне границ и фона — можно попробовать тупо перекрыть им незаполненный контрол (визуально). В остальных, увы, ничего не даст.

Единственное, что вообще пришло на ум по теме из мира (около)CSS.

Link to comment
Share on other sites

  • 0

В тех браузерах, где стилизуется на уровне границ и фона — можно попробовать тупо перекрыть им незаполненный контрол (визуально). В остальных, увы, ничего не даст.

Ничего не выйдет. Слишком слабый контроль над плейсхолдером.

Link to comment
Share on other sites

  • 0

Upd: вроде случайно нашел вариант, дающий что-то похожее и в Хроме. До универсальности, конечно, далеко, но хоть что-то. А вот в Safari/Win (правда, не самом последнем, 5.1.5) как раз вообще ничего не вышло...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy