質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

4352閲覧

widthとheightを同じ長さにする方法

jasmine-jp

総合スコア15

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2020/04/28 03:26

編集2020/04/28 03:31

#質問
下記の .element a に padding-bottom: 100% を与えても a の font-size だけ縦幅が大きくなってしまいます。
width の % 表記をやめて、親要素に height を当てるしかないと考えていますが他に a の font-size を無視して高さを指定する方法はありますか?また width と height を合わせる方法は padding 以外にありますか?

やりたいこと

aタグのクリック範囲を正方形にしたい

やったこと

html

1<div class="container"> 2 <div class="elements"> 3 <div class="element element1"> 4 <a href="#" class="works">WORKS</a> 5 </div> 6 <div class="element element2"> 7 <a href="#" class="about">ABOUT</a> 8 </div> 9 <div class=element> 10 <a href="#" class="contact">CONTACT</a> 11 </div> 12 </div> 13</div>

css

1body { 2 font-family: 'Garamond'; 3} 4 5a { 6 text-decoration: none; 7} 8 9.container { 10 width: 90%; 11 margin: 0 auto; 12} 13 14.elements { 15 margin: 15vw auto 0 auto; 16 width: 70%; 17} 18 19.element { 20 width: 30%; 21 float: left; 22} 23 24.element a { 25 display: block; 26 padding-bottom: 100%; 27} 28 29.element1, .element2 { 30 margin-right: 3vw; 31}

#環境
Visual Studio Code

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

padding-bottom: 100% で width と height を合わせる方法は、内包要素をposition: absolute;で浮かせるのが一般的だと思います。

HTML

1<a href="#" class="works"><div>WORKS</div></a>

CSS

1.element a { 2 display: block; 3 padding-bottom: 100%; 4 position: relative; /* ADD */ 5} 6 7.element a div { 8 position: absolute; 9 width: 100%; 10 top: 50%; 11 text-align: center; 12 transform: translateY(-50%); 13} 14```**動くサンプル:**[https://jsfiddle.net/pjm8uLe4/](https://jsfiddle.net/pjm8uLe4/)

投稿2020/04/28 04:05

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問