October
27

2017

CSSでフォームのデザイン

フォームで使えるCSSデザインの紹介です。
入力欄にフォーカスするとlabel要素がツールチップとして、表示されます。

それでは、ソースサンプルとデモページをご覧ください。

▼以下が実際のソースサンプルです。

▼CSS


.Input{
  position: relative;
    margin-bottom: 50px;
}
input,label {
  transition: all .2s;
  font-size: 14px;
}
input{
  width: 90%;
  padding: 10px;
  border: 1px solid #aaa;
  background: #fff;
  border-radius: 0;
  appearance: none;
  color: #333;
}

label {
  position: absolute;
  top: 35%;
  left: 10px;
  color: #aaa;
  line-height: 1;
}

input:focus{
  border-color:#a00;
  outline: 0;
}

input:focus   label {
  top: 50px;
  left: 0;
  padding: 7px;
  border-radius: 3px;
  background-color: #a00;
  color: #fff;
  font-size: 14px;
}
input:focus   span{
    color: #ff0;
}
input:focus   label::before {
  content: '';
  position: absolute;
  top: -50%;
  left: 50%;
  margin-right: -7px;
  border: 7px solid transparent;
  border-bottom-color: #a00;
}

 


▼HTML

    <p class="Input">
    <input id="req" type="text">
    <label for="req">これは必須項目です。</label>
    </p>
 


今回、参考にさせていただいたのは、
WebLiker』さんです。
ありがとうございます。

デモページは、こちら