セレクトメニューカスタマイズ

お問い合わせフォームでよく使われる、セレクトメニュー。

セレクトメニューの枠線、矢印マークのカスタマイズです。

目次

作りたいもの

See the Pen Untitled by Mocha (@tomokoro) on CodePen.

HTML

<form class="form">
  <div class="form__item">
    <select name="select" class="">
      <option value="">選択してください</option>
      <option value="スパークリングワイン">スパークリングワイン</option>
      <option value="白ワイン">白ワイン</option>
      <option value="赤ワイン">赤ワイン</option>
     </select> 
   </div>
</form>

CSS

/* デフォルトのスタイルをリセット */
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

.form__item {
  max-width: 500px;
  margin: auto;
  position: relative;
}

.form__item select {
  border: 1px solid darkgreen;
  cursor: pointer;
  display: block;
  font-size: 0.75rem;
  height: 2.5rem;
  padding-left: 0.5rem;
  max-width: 500px;
  width: 100%;
}

.form__item::before {
  border-color: darkgreen transparent transparent transparent;
  border-style: solid;
  border-width: 9px 6px 0 6px;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  right: 16px;
  top: 16px;
  width: 0;
}

注意点①

selectタグにもともと設定されているCSSをリセットする必要があります。

注意点②

矢印の▼は疑似要素でつくっています。

selectタグには疑似要素はつけることができないので注意が必要です。

今回はselectタグの親要素を基準にして、親要素に疑似要素をつけています。

よかったらシェアしてね!
  • URLをコピーしました!
目次