选项卡的实现的几种方法
来源:互联网 发布:学数据库之前学什么 编辑:程序博客网 时间:2024/06/03 19:21
今天总结一下页面中选项卡实现的几种方法。在实战中会经常的使用到。下面的方法都是纯HTML+CSS,并没有用到JS,JS日后补上。
一、使用:target属性实现选项卡
页面的结构:(html)
<div class="parent"><a href="#div1">选项卡1</a><a href="#div2">选项卡2</a><div id="div1"><p>选项卡1的内容</p></div><div id="div2"><p>选项卡2的内容</p></div></div>注意:这里要注意内联元素在元代码中若有回车,则在页面中会出现选项卡的标题之间有一个缝隙,所以如上所示,两个a标签连着写。页面的CSS:
*{margin:0;padding:0;}body{padding:20px;}div.parent{position:relative;}a{border:1px solid #ccc;padding:10px;line-height:40px;background:#ffa;color:#000;text-decoration:none;position:relative;z-index:3;}div.parent > div{width:300px;height:200px;border:1px solid #ccc;background:#ffa;position:absolute;top:38px;left:0px;z-index:2;display:none;}div.parent > div:target{display:block;}此方法的缺点是在不考虑浏览器的兼容问题的情况下,它无法控制选中的选项卡相对应的样式变化。并且地址栏也会出现相对应的div的id/运行的结果:
二、使用:checked属性实现选项卡
页面结构:
<ul class="tabs"><li><input type="radio" name="tabs" id="tab1" checked/><label for="tab1">选择卡1</label><div class="tab_content" id="tab_content1"><p>选项卡1的内容</p></div></li><li><input type="radio" name="tabs" id="tab2"/><label for="tab2">选择卡2</label><div class="tab_content" id="tab_content2"><p>选项卡2的内容</p></div></li></ul>页面的CSS:*{margin:0;padding:0;list-style:none;box-sizing:border-box;}body{padding:20px;}.tabs{width:650px;position:relative;background:#aaf;}.tabs li{float:left;}.tabs input[type=radio]{/*隐藏单选框的样式*/position:absolute;top:-9999px;left:-9999px;}.tabs label{display:block;border:1px solid #000;padding:10px;text-align:center;border-radius:6px 6px 0 0 ;background:#aaf;border-bottom:1px solid transparent;position:relative;top:4px;z-index:3;transition:all 0.2s ease-in-out;}.tabs label:hover{background:#bbf;}.tabs .tab_content{width:100%;background:#faf;height:200px;position:absolute;top:43px;left:0px;z-index:2;border:1px solid #000;padding:10px;display:none;}.tabs input[type=radio]:checked + label{top:0px;padding-top:14px;background:#faf;}.tabs input[type=radio]:checked ~ div[id^=tab_content]{display:block;}此处注意要把单选框的样式隐藏起来,不要在页面中显示。此方法相对于上面的方法做出了一些改进,使得我们可以控制选中的样式,但是由于采用了CSS3的属性,对于不兼容CSS3的浏览器来说就不能用了。运行的结果:
0 0
- 选项卡的实现的几种方法
- Android选项卡的几种实现方法
- 实现ZOOM命令的Extents选项的几种方法
- DropDownList ,select 添加默认 选项的几种方法
- Jquery选项卡的实现方法
- 选项卡技术几种方法
- 选项卡的实现
- 选项卡的实现
- 选项卡的实现
- Visual 2008中选项卡实现属性页||选项卡的实现方法
- js中简易选项卡的实现(3种方法实现样式的封装)
- ComboBox的下拉选项的树状显示的几种方法对比
- 软件登录的几种实现方法
- 实现性能目标的几种方法
- 几种实现统计表的方法
- 实现线程同步的几种方法
- 实现 li 编号的几种方法
- strlen的几种不同实现方法
- 分数的加减乘除运算
- [android基础]Cursor类的使用
- 蓝桥杯-寻找数列中最大数
- Qt入门之基础篇 ( 二 ) :Qt项目建立、编译、运行和发布过程解析
- [ZJOI2006书架]Splay
- 选项卡的实现的几种方法
- 如何踏上人工智能之路(机器学习篇)
- [HDU 1394]Minimum Inversion Number(归并排序/线段树)
- [MYSQL]如何并发查询并更新
- TCP/IP:UDP(3) ICMP
- leetcode 35. Search Insert Position
- [翻译]memcached 文本协议(未完成)
- 数据存储(SharedPreferences)(内部存储及外部存储)
- quagga源码学习--BGP协议对等体连接tcp md5签名认证选项