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>
目录
相关文章
|
5月前
|
前端开发 JavaScript
什么是CSS的:target选择器
什么是CSS的:target选择器
61 0
|
前端开发
css3-巧用选择器 “:target”
今天(昨天)又发现一个知识盲区 css3的:target标签,之前学习的时候就是一眼扫过,说是认识了,但其实也就记了三分钟,合上书就全忘光了。 直到昨天,遇到一个有意思的题目,用css3新特性做一个类似tab标签的小效果,才让我又重新认识了  :target  选择器   w3c上对于target选择器的解释是: 试一下他的效果就能对target的作用明白了:http://www.
1031 0
|
前端开发
CSS-选择器14-Target
CSS选择器-系列文章 1、Target选择器 :target 选择器可用于选取当前活动的目标元素 2、效果演示 源代码 CSS-选择器-Target a{ text-decor...
702 0
|
3月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
HTML+CSS 实现通用的企业官网页面(记得收藏)
HTML+CSS 实现通用的企业官网页面(记得收藏)
|
1月前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML和CSS之旅
【9月更文挑战第32天】在这个数字化的时代,拥有一个个人博客不仅是展示自我的平台,也是技术交流的桥梁。本文将引导初学者理解并实现一个简单的个人博客网站的搭建,涵盖HTML的基础结构、CSS样式的美化技巧以及如何将两者结合来制作一个完整的网页。通过这篇文章,你将学会如何从零开始构建自己的网络空间,并在互联网世界留下你的足迹。
|
22天前
|
JSON 移动开发 数据格式
html5+css3+js移动端带歌词音乐播放器代码
音乐播放器特效是一款html5+css3+js制作的手机移动端音乐播放器代码,带歌词显示。包括支持单曲循环,歌词显示,歌曲搜索,音量控制,列表循环等功能。利用json获取音乐歌单和歌词,基于html5 audio属性手机音乐播放器代码。
74 6
|
1月前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML与CSS之旅
【9月更文挑战第31天】在这个数字时代,拥有一个个人博客网站是展示自我、分享知识和连接世界的重要方式。本文将引导你通过简单的HTML和CSS知识,一步步构建起你的在线空间。无论你是编程新手还是希望通过实践加深理解,这篇文章都将是你的理想指南。我们将探索基本概念,实现页面布局,并点缀以个性化样式,最终将静态页面转变为动态交互式网站。准备好了吗?让我们开始吧!
|
2月前
|
前端开发 数据安全/隐私保护 容器
HTML+CSS 水滴登录页
该代码实现了一个创意的水滴登录页面,包含一个水滴形状的登录框与两个按钮(忘记密码和注册)。登录框包括用户名、密码输入框及登录按钮。页面设计独特,采用渐变色与动态效果,增强了交互性和视觉美感。以下为关键实现步骤: - 重置默认样式。 - 设置页面背景颜色和尺寸。 - 定义登录表单容器的布局、位置和尺寸。 - 设置登录表单内容样式,包括3D效果和过渡动画。 - 创建伪元素增强水滴效果。 - 设定输入框容器和输入框样式。 - 为提交按钮、忘记密码和注册按钮设定特定样式,并添加悬停效果。