:targetはリンク先となる要素
に対してスタイルを適用できます。
sample
<ul>
<li><a href="#content1">content1の背景色と文字色を変えます</a></li>
<li><a href="#content2">content2の文字を大きくします</a></li>
<li><a href="#box">boxを丸めます</a></li>
</ul>
<div id="content1">content1</div>
<div id="content2">content2</div>
<div id="box">box</div>
#content2{
font-size: 16px;
transition: 1s;
}
#box{
width: 200px;
height: 200px;
background: skyblue;
transition: 2s;
}
/* リンク先となる要素に対してスタイル適用 */
#content1:target{
background: blue;
color: #fff;
}
#content2:target{
font-size: 32px;
}
#box:target{
border-radius: 100%;
}
transition
を使えばアニメーションもできます。
動作確認