利用CSS实现导航栏中英文切换效果
作者:流萤时间:2026-10-21 20:25:56浏览:70
本文介绍如何使用纯CSS实现导航栏的中英文切换效果。核心思路是通过设置ul高度为li的一半并隐藏溢出内容,利用li悬停时改变margin-top值来展示不同语言文本,无需JavaScript即可实现交互。
CSS导航栏中英文切换实现方案
实现思路如下:
首先,将ul容器的高度设置为li元素高度的一半,并设置样式为ul{overflow:hidden}以隐藏超出部分。
接着,定义li元素的悬停状态,当鼠标悬停时,通过设置li:hover{margin-top:-40px;}来向上移动元素,从而展示原本被隐藏的中英文切换内容。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>中英切换导航条</title>
<style type="text/css">
*{padding:0; margin:0;}
li{ list-style:none; }
a{ text-decoration:none;}
.nav{ width:100%; height:40px; background:#222; margin-top:100px; overflow:hidden;}
.list{ width:1000px; height:40px; margin:0 auto;}
.list li{ float:left;}
.list li a{ display:block; transition:0.3s;}
.list b,.list i{ display:block; padding:0 30px; color:#aaa; line-height:40px; text-align:center;}
.list b{ font-weight:100}
.list i{ font-style:normal; background:#333; color:#fff;}
.list a:hover{ margin-top:-40px;}
</style>
</head>
<body>
<div class="nav">
<ul class="list">
<li>
<a href="#">
<b>Index</b>
<i>首页</i>
</a>
</li>
<li>
<a href="#">
<b>course</b>
<i>职业课程</i>
</a>
</li>
<li>
<a href="#">
<b>study</b>
<i>就业学习</i>
</a>
</li>
<li>
<a href="#">
<b>BBS</b>
<i>社区</i>
</a>
</li>
<li>
<a href="#">
<b>JiKe+</b>
<i>发现+</i>
</a>
</li>
</ul>
</div>
</body>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持本站!
作者最新文章
JavaScript将图片转换为Base64编码的两种途径
2026-11-05 16:43:05
怎么在 Vue 或 React 项目中正确集成 animate.js
2026-11-05 10:23:38
JS注册事件:addEventListener基础语法与参数详解
2026-11-05 08:44:56
JSP和JS的区别:运行环境与服务端/客户端职责解析
2026-11-04 23:34:36
pdf.js 官方下载地址:GitHub Release 获取预编译包
2026-11-04 23:07:27
