CSSで目のマークを作成する

最終更新日: 公開日: 2022年03月
目のマーク

パスワード表示非表示用、CSSのみで目のマークを作成する

画像の目のマークと比べるとかなりシンプルになりますが、できる限り簡単に CSS のみで実装できる目のマークを作成しました。パスワードの表示、非表示のために用いられることが多いと思いますので、すでに input タグに設置したものを用意しています。サンプルは JavaScript を使用して切り替えを行っていますが、サンプルコードには目のマーク作成に関わる部分のみ載せています。パスワードを表示・非表示にする機能は【CSS】目のマークでパスワードの表示を切り替える実装方法【JavaScript】目のマークでパスワードの表示を切り替える実装方法をご参照ください。

サンプルコード

HTML

<div class="togglePassword">
  <input type="password">
  <span class="eye">
    <span class="iris"></span>
    <span class="light"></span>
  </span>
  <span class="slash" style="display:none;"></span>
</div>

CSS

.togglePassword {
  position: relative;
  display: inline-block;
}
/* 目の輪郭 */
.eye {
  position: absolute;
  width: 19px;
  height: 19px;
  border-radius: 90% 0 90% 0;
  transform: rotate(45deg);
  top: 50%;
  right: 5%;
  border: solid 0.1rem;
  margin-top: -11px;
  background: white;
}
/* 黒目 */
.iris {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  top: 50%;
  margin-top: -7px;
  right: 18%;
  background: black;
}
/* 黒目に入る光 */
.light {
  position: absolute;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  margin-top: 4px;
  right: 40%;
  background: white;
}
/* スラッシュ */
.slash {
  position: absolute;
  height: 30px;
  width: 1px;
  transform: rotate(65deg);
  top: 50%;
  margin-top: -15px;
  right: 11%;
  background-color: black;
}

解説

目の輪郭、黒目、黒目に入る光、非表示にする際のスラッシュマークをパーツに分けて用意しました。一番のポイントは、border-radius で(正方形の)左上、右下の角を丸めて目の輪郭を作成している部分です。そのほかは正円と直線のみ使用しているのでシンプルな構成になっています。

以上、CSSのみで目のマークを作成する方法をご紹介しました。今回の実装方法であれば、画像やフォントを利用する場合よりも複雑にはなりますが、画像やフォントを読み込む必要がないので処理も重くならずに済みます。また、画像のリンク切れやフォントを読み込めないといった環境にも左右されませんし、細かなデザインの変更や修正に柔軟に対応できるメリットがあります。

 

Contact

ご質問等ありましたら,お手数ですが弊社の個人情報保護方針をお読み頂いた上でフォームからお願い致します.

 
   
Chrome 拡張機能 PageSpeed Insights SEO WordPress Youtube お問い合わせフォーム アナリティクス アンケートフォーム サーチコンソール セミナー タグマネージャー データベース ヒアリング プラグイン ページ閲覧解析 マーケティング メール配信 リッチリザルト レスポンシブ対応 ログ解析 勉強会 商品企画 営業 営業力 営業支援システム 実装 検索順位 検索順位チェックツール 追跡 開発者ツール
contact
Pagetop