纯CSS有tabs,但是如何让第一个链接active,有自己的style,当tabs被点击的时候,links也变成active。我尝试使用:active,:focus但此方法仅在按下选项卡时有效。有了Js,这当然好办,但是没有JS能行吗?
.target:not(:target),
:target ~ .target.default-target {
display: none;
}
.target:target,
.target.default-target {
display: block;
}
a:active, a:focus{
background-color: #7B7B7B;
padding:3px;
}
<ul>
<li><a href="#id1">Блок 1</a>
</li>
<li><a href="#id2">Блок 2</a>
</li>
<li><a href="#id3">Блок 3</a>
</li>
<li><a href="#id4">Блок 4</a>
</li>
</ul>
<div class="target" id="id2">
<p>Sed lobortis placerat elit tincidunt tempor. Nam dignissim euismod quam nec tempor. Sed tortor lorem, ultricies a auctor nec, auctor ut neque. Aenean varius, urna eget adipiscing feugiat, nunc ligula molestie massa, id accumsan turpis metus ac ante.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p>
</div>
<div class="target" id="id3">
<p>Pellentesque quis tortor vitae elit cursus vulputate et vel dui. Nunc commodo pretium arcu in ultricies. Nunc vel velit enim, et tincidunt leo. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</p>
</div>
<div class="target" id="id4">
<p>Quisque eget tempor sapien. Cras convallis tempor orci pulvinar scelerisque. Nullam et erat eu nibh sollicitudin congue sit amet id diam. Sed in lectus ut augue euismod porta. Quisque non lacus odio. Nunc ornare adipiscing egestas.</p>
</div>
<div class="target default-target" id="id1">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec tempus, felis at varius eleifend, neque orci porta magna, consequat aliquam ligula velit quis erat. Aenean porttitor pellentesque risus, eu tincidunt ipsum blandit in.</p>
</div>
代码很漂亮。原理是一样的。完成布局。唯一不利的是,由于绑定要隐藏初始块的类的继承,活动块只能在末尾。大家可以尝试玩一下float或者整个结构体,我觉得这点是可以做到的。
要了解基本原理,您需要阅读以下内容:
可以完成
input radio:但是你必须承认这个实现看起来不太好。所以最好使用javascript,这样会少一些麻烦和拐杖