How to insert an awesome icon font into text input?

How can I insert a calendar web font icon into an input field?

enter image description here

HTML:

<input class="start_date" type="text">

CSS

.start_date:before {
  font-family: "FontAwesome";
  content: "\f073";
}
+4
source share
1 answer

<input>is a self-closing tag, cannot contain a pseudo-element :beforeor in it :after. You can wrap it in <label>or <span>so and stick it there.

.start_date:before {
  font-family: "FontAwesome";
  content: "\f073";
}

.start_date:before,
.start_date input {
  vertical-align: middle;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<label class="start_date">
  <input type="text" placeholder="Date">
</label>
Run codeHide result

Here is an example of having an icon located inside an input field.

.start_date {
  position: relative;
}

.start_date:before {
  font-family: "FontAwesome";
  font-size: 14px;
  content: "\f073";
  position: absolute;
  left: 4px;
  top: 50%;
  transform: translateY(-50%);
}

.start_date input {
  text-indent: 18px;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<label class="start_date">
  <input type="text" placeholder="Date" />
</label>
Run codeHide result
+9
source

All Articles