jquery - CSS导航悬停效果

标签 jquery html css

我正在尝试实现悬停效果,需要一些帮助。

我正在制作一个看起来像导航菜单的选项卡,我希望该选项卡在悬停时从顶部展开。但是我的 CSS 使选项卡在顶部和底部展开,并且也在移动父项。 任何人都可以帮助我调整代码,使其不会移动父级并且只在菜单项的顶部展开提前致谢!

.nav-1 ul li {
    display: inline-block;
    margin: 0px;
    padding: 0px;
}

.nav-1 ul li a {
    transition: 0.5s;
    padding:16px 22px;
    font-size: 18px;
    color: #fff;
    display: block;
    font-weight: 400;
}

.nav-1 ul li a:hover {
    transition: 0.5s;
    padding:22px 22px 26px 22px;
}

最佳答案

这里有一些使用伪元素的东西似乎符合要求。

简化演示

JSfiddle Demo

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.nav-1 ul li {
	display: inline-block;
	margin: 0px;
	padding: 0px;
    vertical-align: top;
}

.nav-1 ul li a {
	transition: 0.5s;
	height: 53px;
    padding: 16px 22px;
	font-size: 18px;
	color: #fff;
	display: block;
	font-weight: 400;
    position: relative;
    background-color: inherit; /*  copies bg color for later */
}

.nav-1 ul li a:after {
    content: '';
    position: absolute; /* doesnt affect parent size */
    top:0%; /* position at top */
    left: 0;
    width: 100%;
    background-color: inherit; /* uses copied bg color */
	transition: 0.5s;
	height: 0px;
    z-index:3;
}

.nav-1 ul li a:hover:after {
	height: 12px; /* add height */
    transform:translateY(-100%); /* adjust location automatically */
}

main {
    height: 250px;
    background: rebeccapurple;
}
.nav-1 li:first-child {background-color: #a0c80a;}
.nav-1 li:nth-child(2) {background-color: #feaf00;}
.nav-1 li:nth-child(3) {background-color: #f13835;}
.nav-1 li:nth-child(4) {background-color: #1ebad8;}
	<div class="grid-container">
		<div class="grid-12 nav-1">
			<ul>
			  <li><a href="#">Home</a></li>
			  <li><a href="#">about us</a></li>
			  <li><a href="#">our team</a></li>
			  <li><a href="#">facilities</a></li>
			</ul>
		</div>
<main></main>
</div>

关于jquery - CSS导航悬停效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31100980/

相关文章:

javascript - 如何切换选中所有复选框

javascript - Html map 对象 - 单击 map 部分获取 id

html - :after tag not working properly with <li>

jquery - 防止在分页的 jquery 数据表中选择多个单选按钮

css - 覆盖 jquery 移动字段包含选择菜单 CSS

html - 居中的 div 变大不能变小

JQuery 检查 anchor 列表中的 anchor 是否有两个类

javascript - JQuery 回调函数的快捷方式,例如 function(){ mycallback() }

jquery - Controller 可以根据结果返回 JSON 或 HTML

javascript - 在 D3 JS 中显示半圆环饼图的值