纯CSS实现点击展开全文功能

看标题大家不难猜到我今天要实现的功能,点击展开全文。 CSS :checked伪类选择器 思路是使用checkbox的:checked来做隐藏和显示。跟上面这个CSS Tab使用radio来实现是差不多的。当点击label标签时,会绑定同步点击 “for” 属性值为 “checkbox” 的 “id”。 HTML代码如下:

<input type="checkbox" id="contTab" checked="checked" class="tabbed">
<div id="cont">这是前端开发博客的正文</div>
<div class="content-more"><div class="gradient"></div> <label for="contTab" class="readmore">点击展开全文</label></div>

当我点击“点击展开全文”时,也就点击了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结合起来还可以做更多好玩的事,下次有机会再跟你们细聊。

主题测试文章,只做测试使用。发布者:小屋,转转请注明出处:http://www.rumenwu.com/site/1584.html

(8)
小屋的头像小屋
上一篇 2020年10月20日 下午3:06
下一篇 2020年10月26日 下午9:44

相关推荐

  • 百度烽火算法升级,持续打击网络劫持问题

    网站劫持对用户伤害极大,严重危害搜索用户的网络安全。一直以来,网站劫持问题都是百度搜索重点关注和严厉打击的问题之一。 网站劫持的表现形式 百度搜索中的网站劫持有以下两种表现形式: 跳转劫持:用户点击目标网页后,页面直接跳转至另一页面; 后退劫持:用户完成对某网页的浏览,点击“后退”按钮时出现以下几种情况 (1)无法后退,点击后退时页面无反应,内容无变化; (…

    建站入门 2019年3月15日
    79800
  • WordPress网站HTTPS配置教程 WordPress如何启用HTTPS

    随着HTTPS的不断普及,越来越多的网站开启了HTTPS,给网站加上了小绿锁标识,作为全球知名的建站系统,WordPress对于HTTPS的兼容性是非常好的,几乎不用任何修改,只需要服务器配置好证书即可使用https链接访问。但是经常有用户反馈开启了以后地址栏没有绿色的锁(chrome浏览器),下面简单介绍下配置教程。 以下配置教程是基于已经在服务器配置好S…

    产品运营 2018年4月15日
    1.2K00
  • 404页面该怎么做?

    404页面的目的是:告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其他页面而不是关闭窗口离开。 很多开源系统如CMS系统、Blog系统等不提供404页面或提供的404页面并未达到SEO的要求,这让网站的权威性大打折扣。 404页面该达到怎么样的效果才符合SEO要求? 搜索引擎通过HTTP状态码来识别网页的状态。当搜索引擎获得了一个错误链接时,…

    建站入门 2018年1月23日
    90200
  • 提高网站页面收录速度技巧

    很多人经常问入门屋小编,我的网站怎么没有收录?文章怎么快速被收录?下面入门屋小编来解析这个问题: 站点页面被搜索引擎收录是各位站长上线网站后首要问题,其实站点页面收录的快慢就是网站权重的体现,网站文章收录速度,也反映了搜索引擎快照的更新速度。要想提高文章被搜索引擎收录的几率,要么让搜索引擎蜘蛛频繁光顾你的网站抓取信息,要么把你网站上的内容充实起来,每天更新大…

    建站入门 2018年8月16日
    1.0K00
  • 火爆的微短剧,如何迈入2.0时代?

    2024年,微短剧以井喷之势,迎来快速发展。 据《中国互联网络发展状况统计报告》显示,截至今年6月,我国微短剧用户规模已达5.76亿人,占整体网民的52.4%,超过网络外卖、网络文学和网约车用户数量,跃居数字生活榜单前列,“看微短剧的人比点外卖的人还多”。 微短剧为何如此火爆?火爆的背后存在哪些问题?微短剧产业如何实现长效发展? 1、微短剧掀起流量狂潮 根据…

    2024年12月19日
    54300

发表回复

登录后才能评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信