::file-selector-button を使ったファイル選択ボタン

DEMO

  • input[type="file"]::file-selector-button を使うことで、「ファイルを選択してください」部分のボタン表示をCSSでカスタマイズ可能
  • この形式の場合、「選択されていません」や選択済みのファイル名表示部分を非表示することはできない
CSS指定なし

::file-selector-button を使ったCSS指定

コード

HTML

<input type="file" class="file_input" />

CSS

/* 「選択されていません(選択後はファイル名)」のスタイル */
.file_input{ 
  font-size: 0.76rem;
}

/* 「ファイルを選択」ボタンのスタイル */
.file_input::file-selector-button {
  font-weight: bold;
  color: #666;
  background-color: #f5f5f5;
  font-size: 1rem;
  border: 3px double #ccc;
  border-radius: 0.5rem;
  padding: 8px 16px;
  text-align: center;
  cursor: pointer;
}

/* 「ファイルを選択」ボタンのマウスオーバー時 */
.file_input:hover::file-selector-button {
  background-color: #eee;
}