CSS 实现动态显示隐藏(:checked 和 :target 的妙用)

简介: CSS 实现动态显示隐藏(:checked 和 :target 的妙用)

使用 :checked 实现

原理:

  • 默认隐藏 checkbox
  • 点击 label 时会切换 checkbox 的选中状态
  • 使用伪元素选择器 :checked 和 后代选择器 ~ 实现内容和按钮的显示隐藏
<!DOCTYPE html>
<html>
  <head>
    <title>checkbox控制显示隐藏</title>
  </head>
  <body>
    <input id="myCheckbox" type="checkbox" />
    <div class="Btn show">
      <label for="myCheckbox">显示</label>
    </div>
    <div class="Btn hide">
      <label for="myCheckbox">隐藏</label>
    </div>
    <div class="content">内容</div>

    <style>
      .Btn {
        width: 60px;
        text-align: center;
        border: solid 1px black;
        padding: 4px;
        border-radius: 4px;
      }
      label {
        display: block;
        width: 100%;
        cursor: pointer;
      }
      #myCheckbox {
        display: none;
      }
      .content {
        display: none;
      }
      .hide {
        display: none;
      }
      #myCheckbox:checked ~ .content {
        display: block;
      }
      #myCheckbox:checked ~ .hide {
        display: block;
      }
      #myCheckbox:checked ~ .show {
        display: none;
      }
    </style>
  </body>
</html>

使用 :target 实现

可模拟 tab 页签切换效果

原理:

  • 使用锚点链接在 url 后加 #id 来触发 :target
  • 针对 :target 的元素添加显示效果
<!DOCTYPE html>
<html>
  <head>
    <title>:target模拟页签切换</title>
  </head>
  <body>
    <a class="tabBtn" href="#p1">第1页</a>
    <a href="#p2">第2页</a>
    <a href="#p3">第3页</a>
    <div class="content" id="p1">第1页的内容</div>
    <div class="content" id="p2">第2页的内容</div>
    <div class="content" id="p3">第3页的内容</div>

    <style>
      .content {
        display: none;
      }
      #p1:target {
        display: block;
      }
      #p2:target {
        display: block;
      }
      #p3:target {
        display: block;
      }
    </style>
  </body>
</html>
目录
相关文章
|
2月前
|
前端开发 JavaScript
什么是CSS的:target选择器
什么是CSS的:target选择器
22 0
|
前端开发
css3-巧用选择器 “:target”
今天(昨天)又发现一个知识盲区 css3的:target标签,之前学习的时候就是一眼扫过,说是认识了,但其实也就记了三分钟,合上书就全忘光了。 直到昨天,遇到一个有意思的题目,用css3新特性做一个类似tab标签的小效果,才让我又重新认识了  :target  选择器   w3c上对于target选择器的解释是: 试一下他的效果就能对target的作用明白了:http://www.
1010 0
|
前端开发
CSS-选择器14-Target
CSS选择器-系列文章 1、Target选择器 :target 选择器可用于选取当前活动的目标元素 2、效果演示 源代码 CSS-选择器-Target a{ text-decor...
694 0
|
7天前
|
JSON 前端开发 JavaScript
使用html,css,js 实现一个龙年春节祝福卡片效果
使用html,css,js 实现一个龙年春节祝福卡片效果
28 4
|
1月前
|
前端开发 UED
使用HTML和CSS创建响应式表格
在网页设计中,表格是一种组织和展示数据的有效方式。本文档将指导你如何使用HTML和CSS来创建一个既美观又响应式的表格,以便在不同设备和屏幕尺寸上都能良好显示。我们将涵盖基础的HTML表格结构,样式美化以及如何实现响应式布局,使得表格内容在小屏设备上也能清晰阅读
79 0
|
5天前
|
前端开发
HTML+CSS基础知识(6)背景的设置、表格的设计、表单的设计和框架集
这篇文章详细介绍了如何在HTML和CSS中设置背景、设计表格、创建表单以及使用框架集,并通过代码示例和测试结果展示了具体的实现方法和效果。
HTML+CSS基础知识(6)背景的设置、表格的设计、表单的设计和框架集
|
10天前
|
前端开发
【前端】校园二手书交易系统javascript+css+html (源码)【独一无二】
【前端】校园二手书交易系统javascript+css+html (源码)【独一无二】
|
1月前
|
前端开发 JavaScript
文本,wangEditor5展示HTML无样式,wangEditor5如何看源码,Ctrl + U看CSS文件,代码高亮,Prism.js可以实现,解决方法,参考网页源代码的写法
文本,wangEditor5展示HTML无样式,wangEditor5如何看源码,Ctrl + U看CSS文件,代码高亮,Prism.js可以实现,解决方法,参考网页源代码的写法
|
2月前
|
安全 JavaScript
旋转木马轮播图 html+css+js
旋转木马轮播图 html+css+js
|
2月前
|
移动开发 前端开发 JavaScript
HTML5+CSS3+JavaScript网页实战
HTML5+CSS3+JavaScript网页实战