Добавить placeholder в input

145
04 августа 2018, 03:50

У меня есть пользовательский ввод. Ярлык находится на входе и после щелчка по метке выходит поверх ввода. Я хочу, чтобы заполнитель стал видимым, а ярлык - вверху ввода, когда будет нажата кнопка ввода.

Answer 1

JavaScript можно не использовать, если не надо сохранять состояние элемента:

//при изменении input описание фиксируется вверху или опускается вниз если поле пустое 
$('input[type="text"]').on('change', function() { 
  if ($(this).val() != '') { 
    $(this).parent().find('span').addClass('active'); 
  } else { 
    $(this).parent().find('span').removeClass('active'); 
  } 
})
label { 
  width: 300px; 
  position: relative; 
  display: block; 
  margin: 50px auto; 
} 
 
input { 
  box-shadow: none; 
  border: 1px solid gray; 
  padding: 5px; 
  width: 100%; 
} 
 
span { 
  position: absolute; 
  bottom: 6px; 
  left: 5px; 
  font-size: 15px; 
  transition: all .3s; 
} 
 
input:focus+span, 
input:hover+span, 
span:hover, 
span.active { 
  bottom: 105%; 
  left: 0; 
  font-size: 14px; 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<label for="inp"> 
	<input type="text" id="inp"> 
	<span>Введите текст</span> 
</label>

Пример на Codepen.

READ ALSO
Как сделать такую сетку на css?

Как сделать такую сетку на css?

Подскажите, на рисунке слайдер, и в каждом квадрате один слайд с изображениемКак сделать такую сетку на css? В вёрстке каждый квадрат это отдельный...

207
Растянуть див по высоте содержимого

Растянуть див по высоте содержимого

Есть сайт на WordpressУстановил на него слайдер (не плагином)

151
Функция Javascript для подставления данных

Функция Javascript для подставления данных

Подскажите, пожалуйста, есть массив элементов с координатами на google mapsПрисуствует infowindow, я знаю то, что при помощи такого вида ссылки передаются...

206
position:absolute; Из фрейма

position:absolute; Из фрейма

На странице есть плавающий фрейм и в нем есть таким способ реализованное всплывающее окно: #floatWindow{ display : none; } затем #floatWindow:hover{ display : block; } и когда...

169