HTML如何实现点击按钮展开菜单?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联长期为近千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为莲池企业提供专业的成都网站设计、网站建设,莲池网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。我们先来看一个问题
“按钮名称”由黑色边框线包围,单击时,文本将显示在底部,边框线保持不变。
当我点击它时,我想扩展边框线,以便包括“按钮名称”在内的整个句子。
但是,要想让边框线的大小完美地围绕要显示的字符,这样大小会在那时改变,该怎么写呢?
我们来看一个代码
CSS代码
.hidden_box{ display:inline-block; margin:0; padding:0; } .hidden_box label{ padding: 15px; font-weight: bold; border: solid 2px black; cursor :pointer; } .hidden_box label:hover{background: #efefef;} .hidden_box input{display: none;} .hidden_box .hidden_show{ height: 0; padding: 0; overflow: hidden; opacity: 0; transition: 0.8s; } .hidden_box input:checked ~ .hidden_show{ padding: 10px 0; height: auto; opacity: 1; }
HTML代码
<div class="hidden_box"> <label for="label1">按钮名称</label> <input type="checkbox" id="label1"/> <div class="hidden_show"> 文章文章文章文章。文章文章文章文章。文章文章文章文章。 文章文章文章文章。文章文章文章文章。 </div> </div>
浏览器上显示效果如下
当鼠标点击“按钮名称”,会在浏览器上出现以下效果
从显示效果中看,上述代码似乎并不能够完美的解决提出的问题,接下来我们就来看看具体的解决方法
如果它受CSS的限制,它将是一个比较粗略的方法,但有一种方法可以将它全部放在label中。
首先,我们来添加display: block,以便包含内部块元素。
.hidden_box label{ padding: 15px; font-weight: bold; border: solid 2px black; cursor :pointer; display: block; }
接下来,将hidden_show类的宽度设置为width,以便使点击前的状态保持适当的宽度
.hidden_box .hidden_show{ height: 0; width: 0; padding: 0; overflow: hidden; opacity: 0; transition: 0.8s; } .hidden_box input:checked ~ .hidden_show{ padding: 10px 0; height: auto; width: auto; opacity: 1; }
之后,我们来看一下HTML的代码
<div class="hidden_box"> <label for="label1"> 按钮名称 <input type="checkbox" id="label1"/> <div class="hidden_show"> 文章文章文章文章。文章文章文章文章。文章文章文章文章。 文章文章文章文章。文章文章文章文章。 </div> </label> </div>
浏览器上显示效果如下:
当点击“按钮名称”后面的选择框时,浏览器上显示效果如下:
关于HTML如何实现点击按钮展开菜单问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联网站制作公司行业资讯频道了解更多相关知识。
当前标题:HTML如何实现点击按钮展开菜单-创新互联
浏览路径:https://www.cdcxhl.com/article20/cecejo.html
成都网站建设公司_创新互联,为您提供用户体验、服务器托管、网站设计、移动网站建设、搜索引擎优化、网站导航
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联