可能ですが、周囲のコンテンツへの影響を避けるために、要素自体をドキュメントの流れから削除する必要があります。これは を使用して実現するのが最も簡単position: absolute
ですが、残念ながらこれにはposition: relative
(またはその他の非static
position
値) とともにラッピング要素を使用する必要があります。ラッピング要素には、幅と高さを定義する必要があります。これは、(JavaScript または PHP (他の多くのオプションの中でも)) を使用して自動的に行うことができます。
たとえば、HTML:
<span>
<img src="http://placekitten.com/400/400/" />
</span>
<p><!-- generic dummy content, excised for brevity --></p>
そしてCSS:
span {
display: inline-block;
position: relative;
width: 150px;
height: 150px;
}
span img {
position: absolute;
top: 0;
left: 0;
height: 150px;
width: 150px;
/* Vendor-prefixes removed, for brevity */
transition: all 1s linear;
}
span:hover img {
width: 400px;
height: 400px;
/* Vendor-prefixes removed, for brevity */
transition: all 1s linear;
}
JS フィドルのデモ。