次の単純化された問題があるとします。
foreach i in 1..100 do
<div onclick="$("div").attr('class','expand');">block i</div>
そしてこのCSS:
div {
height: 20px;
transition: height 0.5s;
}
div.expand {
height: 50px;
}
divをクリックすると、すべてのdivがクラス「展開」を取得します。これは、ページが拡大されることを意味します。ただし、すべてが下にスクロールします。つまり、div 50 をクリックすると、おそらくウィンドウに表示されなくなり、もう一度表示するには下にスクロールする必要があります。
クリックした div を画面の中央に配置したいと思います。これは CSS で可能ですか、それとも JS が必要ですか?