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

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

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

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Q&A

解決済

1回答

1987閲覧

親要素のaのサイズを子要素のimgに合わせたい

let

総合スコア41

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

0グッド

0クリップ

投稿2020/11/29 17:01

編集2020/11/29 20:08

色々試してみましたが、imgの画像が小さくなったり、a要素のサイズがかわらなかったり、aの親要素のサイズ変更なども試しましたがうまくいきません。ご教授お願い致します。

HHTML

1<body> 2<div class="wrapper01"> 3 /*省略*/ 4 5<div class="insyoku-container"> 6<div class="insyoku"> 7<p class="insyokuten2"><a href="*****.html"><img src="images/*****.jpg" alt="*****"></a></p> 8</div> 9<div class="insyoku"> 10<p class="insyokuten2"><a href="*****.html"><img src="images/*****.jpg" alt="*****"></a></p> 11</div> 12<div class="insyoku"> 13<p class="insyokuten2"><a href="*****.html"><img src="images/*****.jpg" alt="*****"></a></p> 14</div> 15</div> 16<a href="../****/****/****.html">aaaーはこちら</a><br> 17<a href="../****/****/****.html">bbbはこちら</a><br> 18</main> 19<div class="bottom"> 20<footer> 21<ul class="footer-nav"> 22 <li class="footer-nav1"><a href="../../****.html">あああ</a></li> 23 <li> 24 <ul class="footer-nav1"> 25 <li><a href="****/****.html">いいい</a></li> 26 <ll><a href="****/****.html">ううう</a></ll> 27 <li><a href="****/****/*****.html">えええ</a></li> 28 <li><a href="****/****/****/****/****.html">おおお</a></li> 29 </ul> 30 </li> 31 <li> 32 <ul class="footer-nav2"> 33 <li class="niretu"><a href="../****/****.html">かかか</a></li> 34 </ul> 35 </li> 36 <li> 37 <ul class="footer-nav2"> 38 <li class="niretu"><a href="../****/****.html">ききき</a></li> 39 </ul> 40 </li> 41 <li> 42 <ul class="footer-nav2"> 43 <li class="niretu"><a href="../****/****.html">くくく</a></li> 44 </ul> 45</li> 46</ul> 47<p class="tyosakuken">&copy;2020 *********** All rights reserved</p> 48 </footer> 49 </div> 50</div> 51</body> 52</html>

CSS

1.wrapper01{ 2 width: 100%; 3 min-height: calc(100% - 50px); 4} 5.insyoku-container{ 6 display: flex; 7 align-items: center; 8 flex-wrap: nowrap; 9 margin-bottom: 0; 10} 11.insyoku { 12 width: 33%; 13 width: calc(100% / 3); 14} 15.insyokuten2 img{ 16 height: auto; 17 width: 80%; 18 margin-top: 20px; 19 margin-left:auto; 20 margin-right: auto; 21} 22.insyokuten2:hover{ 23 opacity: 0.6; 24} 25.bottom{ 26 height:200px; 27 margin-top: 0; 28 padding-top: 30px; 29 line-height: 20px; 30 background-color:#afeeee; 31} 32.footer-nav{ 33 list-style-type:none; 34 align-items: start; 35 padding: 5px 15px 10px 15px; 36 margin-bottom: 10px; 37 flex-wrap: wrap; 38 display : -webkit-box; /* old Android */ 39 display : -webkit-flex; /* Safari etc. */ 40 display : -ms-flexbox; /* IE10 */ 41 display : flex; 42} 43.footer-nav1{ 44 list-style-type: none; 45 align-items: normal; 46 padding: 0 10px 5px 10px 47} 48.footer-nav2{ 49 list-style-type: none; 50 align-items: normal; 51 padding: 0 10px 5px 10px; 52} 53.tyosakuken{ 54 color:#444444; 55 text-align: center; 56 bottom: 0; 57}

reset.CSS

1html, body, div, span, object, iframe, 2h1, h2, h3, h4, h5, h6, p, blockquote, pre, 3abbr, address, cite, code, 4del, dfn, em, img, ins, kbd, q, samp, 5small, strong, sub, sup, var, 6b, i, 7dl, dt, dd, ol, ul, li, 8fieldset, form, label, legend, 9table, caption, tbody, tfoot, thead, tr, th, td, 10article, aside, canvas, details, figcaption, figure, 11footer, header, hgroup, menu, nav, section, summary, 12time, mark, audio, video { 13 margin:0; 14 padding:0; 15 border:0; 16 outline:0; 17 font-size:100%; 18 vertical-align:baseline; 19 background:transparent; 20} 21 22body { 23 line-height:1; 24} 25 26article,aside,details,figcaption,figure, 27footer,header,hgroup,menu,nav,section { 28 display:block; 29} 30 31nav ul { 32 list-style:none; 33} 34 35blockquote, q { 36 quotes:none; 37} 38 39blockquote:before, blockquote:after, 40q:before, q:after { 41 content:''; 42 content:none; 43} 44 45a { 46 margin:0; 47 padding:0; 48 font-size:100%; 49 vertical-align:baseline; 50 background:transparent; 51} 52 53/* change colours to suit your needs */ 54ins { 55 background-color:#ff9; 56 color:#000; 57 text-decoration:none; 58} 59 60/* change colours to suit your needs */ 61mark { 62 background-color:#ff9; 63 color:#000; 64 font-style:italic; 65 font-weight:bold; 66} 67 68del { 69 text-decoration: line-through; 70} 71 72abbr[title], dfn[title] { 73 border-bottom:1px dotted; 74 cursor:help; 75} 76 77table { 78 border-collapse:collapse; 79 border-spacing:0; 80} 81 82/* change border colour to suit your needs */ 83hr { 84 display:block; 85 height:1px; 86 border:0; 87 border-top:1px solid #cccccc; 88 margin:1em 0; 89 padding:0; 90} 91 92input, select { 93 vertical-align:middle; 94}

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

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

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

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

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

guest

回答1

0

ベストアンサー

以下の理由により、恐らくになります。
・どのようなreset.cssが使用されているのかわからない。
・imgのサイズが分からない。

※バナー画像なので、縦横比は3つすべて同じという前提でやっております。
※こちらの環境では、クロム、フォックス、サファリで動作の確認が取れております。
※.insyokuなど不要と思えるものは消しました。

<div class="insyoku-container"> <a href="/"><img src="images/kks_thumb.jpg" alt="*****"></a> <a href="/"><img src="images/kks_thumb.jpg" alt="*****"></a> <a href="/"><img src="images/kks_thumb.jpg" alt="*****"></a> </div>
.insyoku-container{ font-size:0; padding:20px 0 0; } .insyoku-container a{ display:inline-block; width: calc(80% / 3 ); margin: 0 calc(10% / 3 ); } .insyoku-container img{ vertical-align:bottom; width: 100%; }

imgのmargin-topは.insyoku-containerのpaddingにしました。
imgのmargin-left,rightはaに持たせました。
如何でしょうか?

投稿2020/11/29 19:49

tomtomtomtom

総合スコア563

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

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

let

2020/11/29 20:06

画像の本来は640*426です。 ご教頂いたCSSを適用すると画像がかなり小さくなります。 a要素は画像にあってました。 画像が大きくなればいいんですが・・・
tomtomtomtom

2020/11/29 20:10 編集

<div class="insyoku"> <p class="insyokuten2"> は削除しました? htmlとcss併せての提案なので、cssのみ適応させても上手く行かないと思います。 上記を削除したら、かなり小さくなるなんてことは無いはずですが、、、
let

2020/11/29 20:23

reset css追記しました。 上記、<div class="insyoku">,<p class="insyokuten2">削除しましたが、画像は小さくなったままです
tomtomtomtom

2020/11/29 20:26

うーん まずは、上手く行かずに誠に申し訳有りません。 ちなみにどのくらいのサイズで表示させたいのでしょうか? 質問者様の元のCSSでは 100/3の80%だったのでそれにあわたのですが??
let

2020/11/29 20:28

大きくなりました。 なぜ適性の大きさになるんでしょうか? ご教授いただけると幸いです。
tomtomtomtom

2020/11/29 20:33

???? 何をしたら大きくなったのかわからないのですが???
let

2020/11/29 20:46

HTMLの方を書き換えてサーバーにアップして確認したら大きくなりました
let

2020/11/29 20:49

きちんと画像ホバーもされるし、今謎だらけです
let

2020/11/29 20:52

cssを読み解けないです
tomtomtomtom

2020/11/29 20:56

えーと では読み解け無い部分を教えていただいてもよろしいでしょうか? こちらから教えるのは構わないのですが 質問者様がわからない部分がわからないので お手数をおかけして申し訳有りませんが、宜しくお願いいたします。
let

2020/11/29 21:00

.insyoku-container a{ display:inline-block; width: calc(80% / 3 ); margin: 0 calc(10% / 3 ); } inline-blockはわかるんですがwidth: calc(80% / 3 ); margin: 0 calc(10% / 3 );の二行はどのような効果があるんですか?
tomtomtomtom

2020/11/29 21:01

それとすいません。 hoverは考えていませんでした。 私の記述では、 <p class="insyokuten2"> を消しているので .insyokuten2:hover{ opacity: 0.6; } も動作しません。 .insyoku-container a:hover{ opacity: 0.6; } などに書き換えて下さい。
let

2020/11/29 21:01

.insyoku-container img{ vertical-align:bottom; width: 100%; } これば全体的にわからないです
let

2020/11/29 21:03

今の現状でもホバーされてるんですけど適切ではないわけですね?
tomtomtomtom

2020/11/29 21:06

width: calc(80% / 3 );は anchorのwidthを質問者様の 100/3の80%に合わせています。 margin: 0 calc(10% / 3 ); はmarginの左右に残った隙間を割り振っています。 よく考えたら、margin:0 auto;でも良かったかもしれません。
tomtomtomtom

2020/11/29 21:10

>今の現状でもホバーされてるんですけど適切ではないわけですね? 不思議ですね?? なぜホバーされているのか?? >これば全体的にわからないです 検証ツールなどで、それぞれを解除すればわかりやすいかもです。 vertical-alignをbottomにしておかないと、画像がずれます。 resetでよく使う手です。 width 100でaのサイズに合わせています。
let

2020/11/29 21:14

insyoku-container img{ vertical-align:bottom; width: 100%; } のCSSでimgとaのサイズを合わせているわけなんですね?
tomtomtomtom

2020/11/29 21:19

そうですね width 100 でimgをaに合わせています。 検証ツールなどはご使用できるでしょうか?
let

2020/11/29 21:20

クロームのデベロッパーツールで確認できますか?
tomtomtomtom

2020/11/29 21:22

それです! それのことです! お使いの環境は分かりませんが クロムで確認したいページで右クリックすると下のほうに検証と出てきて 同じものが使えます。
let

2020/11/29 21:22

ここ数日a要素とimg要素のサイズ合わせに奮闘していたので一気に解決したのでかなりびっくりしています。本当にありがとうございます
tomtomtomtom

2020/11/29 21:23

お役に立てて光栄です。 上手く行ってホッとしています^^ また機会がありましたら宜しくお願いいたします。
let

2020/11/29 21:26

ずうずうしい質問なんですが、少しずつ不揃いの画像を三枚並べていてそれもa要素とimg要素がサイズ違いになっているのですが、それも今回ご教授いただいた方法で解決できますでしょうか?
tomtomtomtom

2020/11/29 21:31

ん?? ちょっと質問の意味がよく分かりませんが 私の方法はaのサイズを固定して それにimgを合わせるものです。 不揃いでも、縦横比が同じなら問題はありません。 縦横比が違っても、横幅は全く同じになるはずです。 これで答えになってますでしょうか?
let

2020/11/29 21:36

はい、一度今日教えていただいた方法でやってみます。 本当にありがとうございました
tomtomtomtom

2020/11/29 21:43

答えになっていてよかったです。 いろいろ問答できて楽しかったです^^ それでは評価いただけましたら幸いです。 また機会がありましたら宜しくお願いいたいます^^
let

2020/11/29 21:44

こちらこそ、また宜しくお願いいたします
tomtomtomtom

2020/11/29 22:49

高評価いただき誠にありがとうございます^^ またよろしくおねがいします。
let

2020/11/30 01:49

こちらこそ丁寧、親切に教えていただきありがとうございました。 また宜しくお願い致します。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問