纯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 15:06
下一篇 2020-10-26 21:44

相关推荐

  • 大前端和小前端的区别

    1、小前端指的是Web前端,从浏览器端到web服务器端的所有开发; 2、而大前端就是所有前端的统称,比如Android、iOS、web、Watch等,最接近用户的那一层也就是UI层,然后将其统一起来,就是大前端。大前端最大的特点在于一次开发,同时适用于所有平台,开发者不用为一个APP需要做Android和iOS两种模式而担心。 大前端是web统一的时代,利用…

    2022-02-07
    1.7K0
  • WordPress 实现文章中远程(外链)图片自动本地化的方法[免插件]

    WordPress 文章中远程图片自动保存到本地服务器,最大的好处就是复制粘贴,方便对文章的转载复制。就现实中而言,并不是所有网站都会全部写原创内容或者想伪原创一下,有些好文章想转载,但是对方网站有可能对图片进了防盗链,而图文比较多的情况下,那么就相当麻烦,而此代码功能可有效的帮助你转载复制。 不过,无论载转与否,建议保留出处,这是对原作者的尊重,毕竟人家写…

    2022-04-30
    1.4K0
  • 纯css实现移动端水平滚动导航

    目前最简单呈现效果最好的纯css实现移动端水平滚动导航解决方案。 <!DOCTYPE html> <html> <head lang=”en”> <meta charset=”UTF-8″> <title></title> <meta name=”viewport” content…

    2020-10-27
    1.4K0
  • WordPress响应式主题添加视频手机端不显示问题解决办法

    随着移动互联网的发展,现在手机端的流量占比越来越大,响应式主题由于兼容PC和移动端以及部署方便等优点也被广大站长使用接受,不过由于电脑和手机系统兼容性的问题,很多用户遇到视频播放的问题:在网站添加的视频在电脑上可以正常播放,一到手机上就无法显示。 问题原因 电脑上一般都会安装flash控件,视频大多也是使用flash播放器来播放的,而手机端目前网页播放视频都…

    2018-10-16
    3.3K0
  • 政府网站标准及网页设计规范

    国务院办公厅关于印发政府网站发展指引的通知  国办发〔2017〕47号各省、自治区、直辖市人民政府,国务院各部委、各直属机构: 《政府网站发展指引》已经国务院同意,现印发给你们,请认真贯彻执行。 国务院办公厅 2017年5月15日 (此件公开发布) 政府网站发展指引为进一步加强政府网站管理,引领各级政府网站创新发展,深入推进互联网政务信息数据和便民…

    2020-11-08
    3.9K0
  • Apache伪静态规则文件.htaccess的另类用法

    1、开启/关闭拼写检查(关闭后会区分大小写) CheckSpelling On #开启 CheckSpelling Off #关闭 关闭拼写检查可以解决一下报错 2、禁止/只允许特定IP访问 (1) 禁止单个IP访问,例如192.168.1.1 Order Allow,Deny Allow from all Deny from 192.168.1.1 (2)…

    2019-10-06
    3.4K0