gpt4 book ai didi

html - 创建不跳转的 CSS 悬停样式

转载 作者:行者123 更新时间:2023-11-28 15:40:11 24 4
gpt4 key购买 nike

我为水平导航栏制作了一个移动响应汉堡包菜单,但我无法为水平导航栏上的链接制作悬停样式,这不会让它们跳转。如果您查看我的 Codpen,您会在悬停时看到这些链接上我想要的一般样式,但我希望突出显示的措辞更大。当我尝试这样做时,链接最终会在悬停时跳转。另一件事是我无法将顶部高光放大很多……就像它被其他一些属性切断了一样。这是我制作的第一个这样的菜单(我是相当新的)所以我尝试了很多不同的 CSS 属性和值以使第一眼看起来很完美而且我确信有些 CSS 不是是的,我只是不知道是什么或在哪里。我粘贴了下面的所有内联代码,但一定要查看 codpen,因为它在我的计算机上看起来更准确。感谢您的帮助!

http://codepen.io/sshine2/pen/VbjGaE

编辑:我在 Codepen 中编辑了代码,以显示突出显示的顶部如何被截断以及当突出显示达到我想要的大小时链接跳转。

第二次编辑:修复了顶部被我自己切断的问题。更改了整个菜单的显示位置。

 <!DOCTYPE html>

<html lang="en">

<head>
<meta charset="utf-8">

<style>
body {
font-family: 'Noto Sans', sans-serif;
margin: 0;
width: 100%;
height: 100vh;
background: #ffffff;
background-color: black;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

header {
width: 100%;
background: #ffffff;
position: fixed;
height: 4em;
line-height: 4em;
display: inline-block;
padding-left: 1em;
border-bottom: .1em solid #dddddd;
}
h2 {
font-size: 2.1em;
}
p {
font-size: 10em;
color: white;
padding-top: 1em;
}

@media only screen and (min-width: 319px) {

.menu {
z-index: 1;
display: none;
font-weight: bold;
font-size: 1.2em;
width: 100%;
background: #f1f1f1;
position: fixed;
text-align: center;
margin-top: 3.3em;
color: black;
}

.menu ul {
margin: 0;
padding: 0;
list-style-type: none;
list-style-image: none;
border-top: #dddddd 1px solid;
}

.menu li {
display: block;
padding: 1em 0 1em 0;
border-bottom: #dddddd 1px solid;
}

.menu li:hover {
display: block;
background: #585858;
padding: 1em 0 1em 0;
cursor: crosshair;
}

.menu ul li a {
text-decoration: none;
margin: 0px;
color: black;
}

.menu ul li a:hover {
color: white;
text-decoration: none;
}

.menu a {
text-decoration: none;
color: black;
}

.menu a:hover {
text-decoration: none;
color: white;
}

#nav-icon4 {
width: 35px;
height: 25px;
float: right;
margin-top: -47px;
margin-right: 30px;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: .5s ease-in-out;
-moz-transition: .5s ease-in-out;
-o-transition: .5s ease-in-out;
transition: .5s ease-in-out;
cursor: cell;
}

#nav-icon4 span {
display: block;
position: absolute;
height: 5px;
width: 100%;
background: darkred;
border-radius: 7px;
opacity: 2;
left: 0;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: .25s ease-in-out;
-moz-transition: .25s ease-in-out;
-o-transition: .25s ease-in-out;
transition: .25s ease-in-out;
}

#nav-icon4 span:nth-child(1) {
top: 0px;
-webkit-transform-origin: left center;
-moz-transform-origin: left center;
-o-transform-origin: left center;
transform-origin: left center;
}

#nav-icon4 span:nth-child(2) {
top: 10px;
-webkit-transform-origin: left center;
-moz-transform-origin: left center;
-o-transform-origin: left center;
transform-origin: left center;
}

#nav-icon4 span:nth-child(3) {
top: 20px;
-webkit-transform-origin: left center;
-moz-transform-origin: left center;
-o-transform-origin: left center;
transform-origin: left center;
}

#nav-icon4.open span:nth-child(1) {
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
top: 0;
left: 6px;
}

#nav-icon4.open span:nth-child(2) {
width: 0%;
opacity: 0;
}

#nav-icon4.open span:nth-child(3) {
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg);
top: 25px;
left: 6px;
}
}


@media only screen and (min-width : 768px) {
h2 {
z-index: 1000000;
font-size: 1.5em;
}

p {
font-size: 20em;
color: white;
padding-top: 1em;
}

ul {
list-style-type: none;
margin: 0;
padding: 0;
overflow: hidden;
}

li {
float: right;
margin-left: 20px;
margin-right: 8px;
margin-top: -10px;
}

li a {
display: block;
text-align: center;
text-decoration: none;
}


.menu {
display: block!important;
position: absolute;
right: 0px;
font-size: .9em;
width: 100%;
padding-right: 15px;
margin-top: 10px;
padding-top: 10px;
padding-bottom: 10px;
background: rgba(255, 255, 255, 0);
}
.menu ul {
border-bottom: 0;
border-top: 0;
}
.menu li {
border-bottom: 0;
border-top: 0;
}
.menu li:hover {
cursor: crosshair;
padding-top: 1em;
padding-bottom: .4em;
padding-right: 0em;
padding-left: 0em;
}

.menu ul li a:hover {
color: white;
}

#nav-icon4 {
display: none;
}
}

@media only screen and (min-width : 922px) {
li {
margin-left: 55px;
margin-right: 18px;

}
.menu {
padding-right: 1px;
}
}


@media only screen and (min-width : 1400px) {
header {
height: 5em;
line-height: 5em;
}
h2 {
font-size: 2.6em;
}
li {
margin-left: 55px;
margin-right: 30px;
}
.menu {
padding-right: 1px;
font-size: 1.2em;
}
}

</style>

<title>hamburgers</title>
</head>

<body>
<header>

<span>Shine Design</span>
<div id="nav-icon4">
<span></span>
<span></span>
<span></span>
</div>

</header>

<div class="menu">
<ul>
<a href="#">
<li>LINK ONE</li>
</a>
<a href="#">
<li>LINK TWO</li>
</a>
<a href="#">
<li>LINK THREE</li>
</a>
<a href="#">
<li>LINK FOUR</li>
</a>
<a href="#">
<li>LINK FIVE</li>
</a>
</ul>
</div>

</body>

<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">google.load("jquery", "1.3.2");</script>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
$(document).ready(function(){
$('#nav-icon4').click(function(){
$(this).toggleClass('open');
});
});
</script>
</html>

最佳答案

跳跃问题是因为您在悬停时添加了以前不存在的填充。

在你的媒体查询定义填充之前:

.menu li {
border-bottom: 0;
border-top: 0;
padding: 1em;
}

然后在您的最小 768 像素查询中删除为 .menu li 定义的填充。,

code pen

关于html - 创建不跳转的 CSS 悬停样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43575152/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com