css でホバー擬似クラスを使用して、テーブル内の個々のリンクのサイズを大きくしたいのですが、それらがホバーされるたびに、サイズの増加は行/列のサイズに影響し、テーブル内の他のすべてのリンクはそれに応じて移動します.
cssとhtmlのみを使用してこれを防ぐ方法はありますか?
CSS3 Transform を使用して、周囲の要素を再配置せずにリンクをスケーリングできます。次に例を示します。
table a:hover{ -webkit-transform: scale(1.2); }
-webkit-
他のベンダー (-moz-
および など-ms-
) では変更できますが、IE8 などの一部のブラウザーでは使用できません。
を使用line-height
すると、水平方向の移動が妨げられないため、列が拡張されます。
にイニシャルheight
をセットしline-height
ます。
td {line-height: 20px; font-size: 14px;}
td:hover {font-size: 20px;}
高さを強制的にline-height
同じにしてfont-size
、ホバーを変更します。
相対および絶対ポジショニングを使用できます。
a:link {
display: block;
font-size: 1em;
outline: thin solid;
}
a:hover {
position: absolute;
top: 0;
left: 0;
font-size: 3em;
}
例については、このjsFiddleを参照してください。