10
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Qiita株式会社Advent Calendar 2022

Day 14

【CSS Tips】aタグの中にbuttonタグを入れたい時

Last updated at Posted at 2022-12-13

これは何

UIを実装している時に、リンクカードの中にボタンを入れたいけど、buttonタグをaタグに内包することができず困ったことがありました。

その際に仕様した解決方法の紹介です。

image.png

例えばこんな感じで、カード全体はリンクのためaタグを使いたいけれど、その中にボタンを入れたい状況を想定しています。

もしもっと良い方法をご存知の方いましたらコメントなどで教えていただけるととても助かります!

実装方法

まず、構成要素を用意します。
リンクカード自体はdivで実装し、position: relativeを指定しておきます。

次に、div内にaタグでリンクを設置し、position: absoluteinset: 0を指定してdivタグの中いっぱいにaタグ要素が広がるようにします。

次に、クリックさせたいbutton要素だけposition: relativez-index: 1を指定し、aタグよりもレイヤーが上になるようにしてクリックできるようにします。

image.png

Codepenで作成したものはこちらです。
(分かりやすいように、aタグの部分に色をつけています。)

See the Pen Untitled by かべちよ (@kabechiyo13) on CodePen.

10
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?