前提・実現したいこと
どんな画像も正円にしつつ、画面幅に応じて可変させたいです。
-------追記-------
kei344様のご回答は正円にはなりましたが、今回は画像の最大幅を100pxまでと考えております。CSSの「max-width: 100px;」はそのための記載です。
-----ここまで-----
該当のソースコード
floatで横並びにし、画面幅に応じて画像を可変させているのですが、画像が正円にできなくて困っている状況です。
動作サンプル:https://jsfiddle.net/pnfo5kw8/
html
1<div class="outer"> 2 <div class="left"> 3 <img alt="" src="http://bit.ly/34myLVJ"> 4 </div> 5 <div class="right"> 6 <div>あああああ</div> 7 </div> 8</div>
css
1.left { 2 float: left; 3 max-width: 100px; 4 max-height: 100px; 5 margin: 0 15px 0 0; 6 width: calc(20% - 15px); 7} 8.left img { 9 width: 100%; 10 height: 100%; 11 border-radius: 50%; 12 border: 2px solid black; 13} 14.right { 15 width: 80%; 16 float: left; 17}
試したこと
下記のように画像サイズを「%」から「px」に指定すると正円にできますが、これでは画面幅に応じて可変させられなくなってしまいます。
css
1.left img { 2 width: 100px; /* pxに変更 */ 3 height: 100px; /* pxに変更 */ 4 border-radius: 50%; 5 border: 2px solid black; 6}
また下記のようにfloatをやめてflexを使ってもできませんでした。
css
1.outer { 2 display: flex; /* 追加 */ 3} 4.left { 5 /* float: left; */ /* 削除 */ 6 max-width: 100px; 7 max-height: 100px; 8 margin: 0 15px 0 0; 9 width: calc(20% - 15px); 10} 11
もしCSSでの解決策がございましたら宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー