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

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

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

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

HTML5

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

HTML

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

CSS

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

Q&A

解決済

3回答

7929閲覧

親要素よりもサイズの大きい画像を上下左右中央に配置したい

machine_machine

総合スコア162

CSS3

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

HTML5

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

HTML

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

CSS

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

0グッド

1クリップ

投稿2018/05/01 04:14

編集2018/05/01 04:15

https://jsfiddle.net/c9td9d8q/

↑実現したいことのサンプルとして transform と絶対配置で再現しています。

赤い部分が親要素の矩形、グレーははみだした画像の色です。
(実際には親要素に overflow: hidden; をかけてはみだした部分は見えないようにします)

transform のプロパティを使ってパララックスで画像を動かしたいため、
可能であれば初期値は translate3d(0, 0, 0); にしておきたいです。

何かいい方法はありますでしょうか。

html

1<div class="image"> 2 <img src="//placehold.it/200" alt=""> 3</div>

css

1.image { 2 width: 100px; 3 height: 100px; 4 position: relative; 5 background: #c33; 6} 7 8img { 9 display: block; 10 position: absolute; 11 top: 50%; 12 left: 50%; 13 transform: translate3d(-50%, -50%, 0); 14}

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

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

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

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

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

guest

回答3

0

なにも考えずにflexで

css

1body { 2 margin: 0; 3 padding: 80px; 4} 5 6.image { 7 width: 100px; 8 height: 100px; 9 /*position: relative;*/ 10 background: #c33; 11 display:flex; 12 justify-content:center; 13 align-items:center; 14} 15 16img { 17 display: block; 18 /*position: absolute; 19 top: 50%; 20 left: 50%; 21 transform: translate3d(-50%, -50%, 0);*/ 22 opacity: 0.5; 23}

投稿2018/05/01 04:44

sousuke

総合スコア3828

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

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

0

ベストアンサー

flexで調節してみました。

CSS

1.image { 2 width: 100px; 3 height: 100px; 4 /* position: relative; */ 5 background: #c33; 6 display: flex; 7 justify-content: center; 8 align-items: center; 9} 10 11img { 12 /* 13 display: block; 14 position: absolute; 15 top: 50%; 16 left: 50%; 17 transform: translate3d(-50%, -50%, 0); 18 */ 19 opacity: 0.5; 20 flex-shrink: 0; 21}

投稿2018/05/01 04:44

編集2018/05/01 04:51
Atsushi_Okumura

総合スコア355

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

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

sousuke

2018/05/01 04:45

もろかぶりしました…m(_ _;)m
machine_machine

2018/05/01 07:06

お二方ともありがとうございました。 「ご回答いただいた時間が早いほうをベストアンサーに」と思いましたが時間もまったく同じなため、 `flex-shrink: 0;` によって画像以外でも対応ができたこちらを選ばせていただきます。
guest

0

backgroundで敷いてみるのはどうでしょうか(fiddle改)。

css

1/* 中の<img>タグは撤去 */ 2.image { 3 width: 100px; 4 height: 100px; 5 background: url(//placehold.it/200) 50% 50%; 6} 7

投稿2018/05/01 04:22

maisumakun

総合スコア145183

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問