2016-09-07 13 views
2

は、私はそれを置くと、私はフルスクリーン、絶対的な位置付けになるためにそれを拡張したい静的要素要素を静的位置から絶対位置/固定位置に変換することは可能ですか?

<img src="whatever.jpg" /> 

を持っています。これはちょうどCSSを使用して行うことが可能ですか?

+0

.element:ホバー{位置:固定されました。トップ:0;左:0;右:0;ボトム:0;} –

+0

スムーズなトランジションやシンプルなスタイルの切り替えをしたいですか? – Simon

+0

絶対位置でフルスクリーンにしたい場合は、HTML構造、具体的にはイメージの親要素によって異なります。上で述べたような固定位置では、それは問題ではない。それから私はあなたにUI/UXのことを勇気づけるでしょう。ホバーオンの場合、画像は全画面表示になります。ユーザーはビューポート内でイメージを常にホバリングするので、ページを再び表示する方法は?つまり、マウスカーソルをビューポートから移動してページを再表示する必要があります。フルスクリーンモードは言及しません。 – thepio

答えて

1

あなたはホバーに100 vw/vhposition: absolute、変更幅と高さを使用することができますが、あなたは、幅とIMGの高さを宣言する必要がある最初の移行を取得します。

body { 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 
img { 
 
    transition: all 0.3s linear; 
 
    width: 200px; 
 
    height: 150px; 
 
    position: absolute; 
 
} 
 
img:hover { 
 
    width: 100vw; 
 
    height: 100vh; 
 
}
<img src="http://placehold.it/350x150">

0

私は多すぎるCSSプロパティを使用しているかもしれませんが、それは単に何が起こるかを説明することができます。

// Normal status - without hover 
img { 
    // Set the position relative to it's parent (body in this case) 
    position: relative; 
    // Automatically calculate distance between the top, left, right and bottom of the window 
    top: auto; 
    left: auto; 
    right: auto; 
    bottom: auto; 
    // Static width/height 
    width: 250px; 
    height: 250px; 
} 

// Hovered status 
img:hover { 
    // Force the image in an fixed position (not respecting other elements) 
    position: fixed; 
    // Make sure it aligns to all sides 
    top: 0; 
    bottom: 0; 
    left: 0; 
    right: 0; 
    // Force it to have the height and width of the viewport (100%) 
    width: 100vw; 
    height: 100vh; 
} 
+0

これは、ビューポートの幅と高さが画像の比率にないため、ほぼすべての場合に画像を拡大します。 – Simon

+0

@Simonアスペクト比が尊重されることを望んでいない限り、それはまさにOPが要求したものです。しかし、解決策はユーザーごとに異なるため、問題が発生します。 – Roberrrt

関連する問題