文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

CSS如何实现简单的选项卡切换效果

2024-04-02 19:55

关注

这篇文章将为大家详细讲解有关CSS如何实现简单的选项卡切换效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

  页面布局及样式:

  <divclass="box">

  <divclass="list"id="one">1</div>

  <divclass="list"id="two">2</div>

  <divclass="list"id="three">3</div>

  <divclass="list"id="four">4</div>

  </div>

  <divclass="link">

  <ahref="#one">1</a>

  <ahref="#two">2</a>

  <ahref="#three">3</a>

  <ahref="#four">4</a>

  </div>

  ......

  .box{

  height:10em;

  border:1pxsolid#ddd;

  overflow:hidden;

  }

  .list{

  line-height:10em;

  background:#ddd;

  }

  容器设置了overflow:hidden,且每个列表高度和容器的高度一样高,这样保证永远只显示一个列表。当我们点击按钮,如第三个按钮,会改变URL地址的锚链为#three,从而触发id为three的第三个列表发生的锚点定位,也就是改变容器滚动高度让列表3的上边缘和滚动容器上边缘对齐,从而实现选项卡效果。

  3372313660-5bfce3b04c4e2_articlex.png

  但是这种方式有一定的不足之处:

  其一,容器高度需要固定;

  其二,锚点定位会触发窗体的重定位,也就是如果页面可以滚动,那么点击选项页面也会发生跳动

  为了改变这种情况,下面利用下面的方式。页面布局为:

  <divclass="box">

  <divclass="list"><inputid="one">1</div>

  <divclass="list"><inputid="two">2</div>

  <divclass="list"><inputid="three">3</div>

  <divclass="list"><inputid="four">4</div>

  </div>

  <divclass="link">

  <labelclass="click"for="one">1</label>

  <labelclass="click"for="two">2</label>

  <labelclass="click"for="three">3</label>

  <labelclass="click"for="four">4</label>

  </div>

  这样写就算页面窗体就有滚动条,绝大多数情况下,也都不会发生跳动现象。其原理就是在每个列表里塞入一个肉眼看不见的<input>输入框,然后选项卡按钮变成<label>元素,并通过for属性与<input>输入框的id相关联,这样,点击选项按钮会触发输入框的focus行为,触发锚点定位,实现选项卡切换效果。

  但是上面这种技术要想用在实际项目中还离不开JavaScript的支持,一个是选项卡按钮的选中效果,另一个就是处理列表部分区域在浏览器外面时依然会跳动的问题。

  相关处理类似下面的做法,使用jQuery语法:

  $('label.click').removeAttr('for').on('click',function(){$('.box').scrollTop(xxx);'xxx'表示滚动数值

  });

关于“CSS如何实现简单的选项卡切换效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯