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>
目录
相关文章
|
前端开发 JavaScript
什么是CSS的:target选择器
什么是CSS的:target选择器
335 0
|
前端开发
css3-巧用选择器 “:target”
今天(昨天)又发现一个知识盲区 css3的:target标签,之前学习的时候就是一眼扫过,说是认识了,但其实也就记了三分钟,合上书就全忘光了。 直到昨天,遇到一个有意思的题目,用css3新特性做一个类似tab标签的小效果,才让我又重新认识了  :target  选择器   w3c上对于target选择器的解释是: 试一下他的效果就能对target的作用明白了:http://www.
1202 0
|
前端开发
CSS-选择器14-Target
CSS选择器-系列文章 1、Target选择器 :target 选择器可用于选取当前活动的目标元素 2、效果演示 源代码 CSS-选择器-Target a{ text-decor...
873 0
|
存储 前端开发 JavaScript
仿真银行app下载安装, 银行卡虚拟余额制作app,用html+css+js实现逼真娱乐工具
这是一个简单的银行账户模拟器项目,用于学习前端开发基础。用户可进行存款、取款操作,所有数据存储于浏览器内存中
|
人工智能 程序员 UED
【01】完成新年倒计时页面-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
【01】完成新年倒计时页面-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
1057 21
【01】完成新年倒计时页面-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
|
前端开发 JavaScript
【02】v1.0.1更新增加倒计时完成后的放烟花页面-优化播放器-优化结构目录-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
【02】v1.0.1更新增加倒计时完成后的放烟花页面-优化播放器-优化结构目录-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
983 14
【02】v1.0.1更新增加倒计时完成后的放烟花页面-优化播放器-优化结构目录-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
css3 svg制作404页面动画效果HTML源码
css3 svg制作404页面动画效果HTML源码
354 34
|
前端开发
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
1341 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
html+js+css实现的建筑方块立体数字时钟源码
html+js+css实现的建筑方块立体数字时钟源码
761 33

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    653
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    504
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    511
  • 4
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
    326
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    614
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    794
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    1576
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    366
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    1292
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    626