CSSだけで、任意の要素に配置した画像を画面一杯に表示することは、基本的には出来ない。「img src」「背景画像」「div要素」何れの場合でも。可能なのは、特殊な要件が重なった場合だけ

CSS

要件

 状態:-  閲覧数:1,342  投稿日:2017-03-23  更新日:2017-03-23
1.ボタンクリック
・「img src」へ「hogeクラス」付与
・JavaScriptで実装済

2.「hogeクラス」付与した要素
・CSSで画面一杯に表示したい


検索してみた結果分かったこと


CSSだけで、「任意の要素に配置した画像」を画面一杯に表示することは、基本的には出来ない
・「img src」ではなく「背景画像」でも不可
・「div要素」でも無理

ネットに掲載されている情報は
・全て、特殊な条件を前提にしている

「background-size:cover」は、「htmlタグ」や「bodyタグ」で使用した場合のみ、画面一杯に表示することが出来る

 閲覧数:337 投稿日:2017-03-23 更新日:2017-03-23 

background-size:cover


ビューポート全体をカバーするが、使用場面は限られる
・「htmlタグ」や「bodyタグ」以外の要素で使用すると、画面一杯に表示することは出来ない
body {
 /* 画像ファイルの指定 */
 background-image: url(images/background-photo.jpg);
 
 /* 画像を常に天地左右の中央に配置 */
 background-position: center center;
 
 /* 画像をタイル状に繰り返し表示しない */
 background-repeat: no-repeat;
 
 /* コンテンツの高さが画像の高さより大きい時、動かないように固定 */
 background-attachment: fixed;
 
 /* 表示するコンテナの大きさに基づいて、背景画像を調整 */
 background-size: cover;
 
 /* 背景画像が読み込まれる前に表示される背景のカラー */
 background-color: #464646;
}


「max-width:100%;」は原寸画像サイズ以上に拡大表示することは出来ない。「width:100%;」は配置要素サイズ以上に拡大することが出来ない

 閲覧数:317 投稿日:2017-03-23 更新日:2017-03-23 
「max-width:100%;」と「width : 100%;」の違い


「100vw;100vh;」は本当に親要素の影響を受けないの?

 閲覧数:356 投稿日:2017-03-23 更新日:2017-03-23 

ネットには間違ってはいないけれども、紛らわしい表記が溢れている


要素をフルスクリーン(全画面)サイズにするには、以下の指定でOK
.box {
 width: 100vw;
 height: 100vh;
}

実際に試してみると?
・全画面表示にならない


何が問題なの?


CSSでは親要素の高さを取得することは出来ない
・親要素がなかったり、親要素に適切な値が付与されていればよいが、そうではない場合には全く対応できない


分かりにくいCSS height のパーセント設定のまとめ

最終的には、jQueryでwindowサイズを取得して指定

 閲覧数:319 投稿日:2017-03-23 更新日:2017-03-23 

最終的に


jQueryでwindowサイズを取得して指定
・CSSへの指定はheightにではなくmin-heightに指定する
・そうすることでコンテンツ量が画面サイズより大きい場合、コンテンツの長さに応じた高さを表示してくれる
//画面の高さ取得
h = $(window).height();
$("#contents #main article").css("min-height", h + "px");


感想


ネットには間違ってはいないけれども、紛らわしい表記が溢れている
・ちょっと検索してみたら「簡単に出来る」と自信満々に謳っていたので、片っ端から試してみたが、結局全滅だった
・時間のムダだった
・最初からjQueryで実装すれば良かったよ



上下中央揃え。要素の「幅」や「高さ」指定不要 / div { height: 100%; display: flex; justify-content: center; align-items: center; }

Private リセットCSSテンプレ / CSS圧縮Link



類似度ページランキング
順位 ページタイトル抜粋
1 一つの要素に対して「id 属性値」を複数指定することは出来ない 34
2 デフォルトの「Google Chrome」ではURL欄にwwwが表示されないため、「Microsoft Edge」を使用する 34
3 要素。width と height 属性を指定しなかった場合、(内容のいかんに関わらず)幅 300 ピクセル、高さ 150 ピクセルで表示される 31
4 「レイアウト崩れ」がどうしても解決しない → Chrome「デベロッパーツール」で怪しいと思った要素を、正常表示されるまで削除し続けていく 30
5 Braveインストールしてみたけれども、全ての広告を必ず非表示に出来るわけではないみたい 29
6 Illustrator CS3では、[オブジェクト全体に合わせる]項目が存在しない。そのため「アートボードの大きさ」に自動で合わせることは出来ない 29
7 背景画像がどうしても表示されない → 「clear:both;」を挿入してみる 29
8 「Midjourney」を使用してみた感想。2022 年 8 月 2 時点では、画像生成能力自体は素晴らしいと思いますが、UIが致命的に分かりづらかったです。 28
9 「Google Chrome」タブをグループへ追加すると、そのタイミングでグループは自動的に開かれてしまいます。開かないようにすることはできません 28
10 Google Chrome™ デベロッパーツールで表示できないスマホ画面を確認するためには、「mobile browser emulator」を使用 28
11 「Google Chrome」で「This browser does not support WebGL」と表示される場合は、ハードウェアアクセラレーションに不具合がある可能性があるため、設定画面よりハードウェアアクセラレーションを一旦無効にしてみる 28
12 ChromeでTwitter画像をクリックした際、拡大(原寸画像以上)表示しないようブラウザ側で指定するため、Chrome 拡張機能「Stylus」を使用しました。 27
13 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない 27
14 「Google Chrome」で「このページは動作していません xxxx.net でリダイレクトが繰り返し行われました。 Cookie を消去してみてください.」と表示されるWebサイトには、「Microsoft Edge」でアクセスしてみる 27
15 拡張機能が Chrome によって無効にされました / この拡張機能は破損している可能性があります。 27
16 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある 26
17 「パッケージ化されてない拡張機能を読み込む」でインストールした拡張は、chromeを「更新」すると正常動作しなくなることがあります。 26
18 Chromeブラウザは、ユーザーという単位で情報管理している(Cookieを使用する場面もあるが、必ずしもCookieだけに頼っているわけではない) 26
19 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない 26
20 「Fireworks」後継として「Gravit Designer」を使用していくことを一度は決定したが、2022 年時点で入手可能なソフトウェアは日本語入力未対応  26
2023/2/05 7:16 更新
週間人気ページランキング / 1-29 → 2-4
順位 ページタイトル抜粋 アクセス数
1 RGB ⇔ Lab | 色変換(色) 49
2 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 38
3 「bgcolor」「background-color」「background」の違い | CSS 34
4 血の色 / #b30000 / #360800 / #ff0000 | カラーコード(色) 25
5 RGBの種類 / ビットカラー | RGB(色) 20
6 「属性」「プロパティ」「アトリビュート」の違い | CSS 18
6 Design 0 18
7 「東京都」のカラーコード取得は難しい | カラーコード(色) 17
8 金融機関ブランドカラー / コーポレートカラー | カラーコード(色) 16
9 「Chrome拡張機能」開発中に遭遇したエラー | Chrome 拡張機能 15
9 Chrome でキャッシュを効かさない | Google Chrome(ブラウザ) 15
10 「Font Awesome 4」と「Font Awesome 5」の違い(Font Awesome バージョン4からのアップグレード) | Font Awesome(フォント) 14
11 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある | z-index(CSS) 13
11 「Bootstrapデザイン」✕「グラフ」 | 2系(Bootstrap) 13
11 「:after擬似要素」は、Chromeの「要素を検証」で確認できない | 擬似(CSS) 13
11 ICCプロファイル | カラーマネージメント(色) 13
11 HSLとHSVの違い | 色変換(色) 13
11 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 13
12 max-width: 100%の効果を打ち消すには、max-width: none; | CSS 12
13 GIMPで「レイヤーとして開く」を選択した画像、の位置情報(x,y)を表示させる方法が分からない | GIMP 系(ソフトウェア) 11
2023/2/5 1:01 更新