热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

css根据判断条件显示或隐藏某标签_纯CSS实现点击展开全文功能

看标题大家不难猜到我今天要实现的功能,正如你打开我的博客文章,在正文下面看到的按钮,点击展开全文。本文简要的为大家介绍一下,
1ebb5c9da7a1be7a338794b78af76832.png

看标题大家不难猜到我今天要实现的功能,正如你打开我的博客文章,在正文下面看到的按钮,点击展开全文。 本文简要的为大家介绍一下,方便理解掌握。

39c65d5b5c8fc74ca3eb5399c8fb6737.png

CSS :checked伪类选择器

思路是使用checkbox的:checked来做隐藏和显示。跟上面这个CSS Tab使用radio来实现是差不多的。当点击label标签时,会绑定同步点击 "for" 属性值为 "checkbox" 的 "id"。

HTML代码如下:


这是前端开发博客的正文

当我点击“点击展开全文”时,也就点击了checkbox,也就改变了checkbox的状态为非选中状态了,根据两个状态来显示不同的CSS,从而实现了展开的功能。需要说明的是这个CSS选择符只兼容IE9及以上。如果要兼容IE8等,可能这个方案就不适合了。

CSS代码如下:

/*阅读全文*/
#contTab{display: none;
}
.content-more{display: none;
}#contTab:checked ~ #cont{max-height: 600px;overflow: hidden;
}
#contTab:checked ~ .content-more{display: block;position: relative;padding-top: 20px;padding-bottom: 30px;text-align: center;
}
#contTab:checked ~ .content-more .gradient{background-image: -webkit-gradient(linear,left top,left bottom,from(rgba(255,255,255,0)),to(#fff));background-image: -webkit-linear-gradient(top,rgba(255,255,255,0),#fff);background-image: linear-gradient(-180deg,rgba(255,255,255,0),#fff);height: 80px;position: absolute;left: 0;top: -79px;width: 100%;
}
#contTab:checked ~ .content-more .readmore{display: inline-block;background: #0067cb;color: #fff;width: 175px;height: 42px;border-radius: 42px;line-height: 42px;font-size: 16px;cursor: pointer;
}

兄弟选择符(E~F)

从上面的CSS,大家可以看到我用了这个CSS强大的选择符,顾名思义,选择E元素后面的所有兄弟元素F。与相邻选择符不同的是,兄弟选择符会命中所有符合条件的兄弟元素,而不强制是紧邻的元素。

另外说一下这个选择符支持IE7及以上。

总结

如果你的网站不需要兼容IE9以下的,可以使用我这个方案来实现展开全文的需求。当然label和checkbox结合起来还可以做更多好玩的事,下次有机会再跟你们细聊。



推荐阅读
  • 本文探讨了在JavaScript中如何有效地从服务器控件DropDownList中获取绑定的ID值,而非仅仅是显示的文本值。这对于需要根据用户选择动态处理数据的应用场景非常有用。 ... [详细]
  • vue基础——表单输入绑定
    一、基础用法你可以用v-model指令在表单及元素上创建双向数据绑定。它会根据控件类型自动选择正确的方法来更新元素。尽管有些神奇,但 ... [详细]
  • 使用 Mui.js 获取复选框值的方法
    本文介绍如何使用 Mui.js 框架来获取复选框的值,并通过数组进行处理和展示。 ... [详细]
  • 基于 Vue 和 Element UI 实现的简洁登录界面设计
    本文介绍了一种利用 Vue.js 和 Element UI 框架构建的简洁登录界面设计。该设计不仅注重用户体验,还确保了界面的美观性和易用性。通过合理的布局和组件配置,实现了高效、响应式的登录功能,适用于多种前端应用场景。 ... [详细]
  • java学习日记对JFrame的操作
    设置背景图片、添加音乐、监控键盘、改变字体风格等等!importjava.applet.Applet;importjava.applet.AudioClip;importjava. ... [详细]
  • 本文介绍如何创建一个简单的Android桌面小部件,通过显示两个文本框来展示基本功能。提供代码下载链接及详细步骤。 ... [详细]
  • 使用Python模拟登录教务系统抓取成绩并分析存储
    本文详细介绍如何使用Python编程语言模拟登录学校教务系统,抓取学生的成绩信息,并进行数据分析和可视化处理,最终将数据存储到MySQL数据库中。 ... [详细]
  • 本文介绍了如何在Java中使用`JCheckBoxMenuItem.setMnemonic()`方法,并提供了多个实际应用的代码示例。 ... [详细]
  • 拖拉切割直线 ... [详细]
  • 本文详细介绍了如何利用 Bootstrap Table 实现数据展示与操作,包括数据加载、表格配置及前后端交互等关键步骤。 ... [详细]
  • 使用jqTransform插件美化表单
    jqTransform 是由 DFC Engineering 开发的一款 jQuery 插件,专用于美化表单元素,操作简便,能够美化包括输入框、单选按钮、多行文本域、下拉选择框和复选框在内的所有表单元素。 ... [详细]
  • 学习目的:1.了解android线程的使用2.了解主线程与子线程区别3.解析异步处理机制主线程与子线程:所谓主线程,在Windows窗体应用程序中一般指UI线程,这个是程序启动的时 ... [详细]
  • 本文针对公司项目中普遍存在的IE浏览器兼容性问题,特别是IE9及以下版本,提出了具体的解决方案,确保用户在这些旧版浏览器中也能顺利实现图片上传预览功能。 ... [详细]
  • 本文介绍了如何利用高德地图API实现一个高效的地点选择组件,适用于需要用户选择具体位置的应用场景,如活动邀请函填写等。该组件支持从地图中选择地点,并自动将地点信息回填至表单中。 ... [详细]
  • KNN算法在海伦约会预测中的应用
    本文介绍如何使用KNN算法进行海伦约会的预测。我们将从数据导入、数据预处理、数据可视化到最终的模型训练和测试进行全面解析。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有