Javascript 在手机上单击时锚定标记缩进
我一直在工作的网站可以在这里找到: 它作为一个简单的页面运行,锚定打开,当单击菜单项时,它使用jQuery滚动到页面上的正确位置。这在手机和桌面上都有效。在我尝试制作手机友好版本时,我制作了以下CSS:Javascript 在手机上单击时锚定标记缩进,javascript,html,css,mobile,hyperlink,Javascript,Html,Css,Mobile,Hyperlink,我一直在工作的网站可以在这里找到: 它作为一个简单的页面运行,锚定打开,当单击菜单项时,它使用jQuery滚动到页面上的正确位置。这在手机和桌面上都有效。在我尝试制作手机友好版本时,我制作了以下CSS: @charset "utf-8"; #header { width: 100%; } #home { width: 100%; } #features { width: 100%; } #colors { width: 100%; } #contact
@charset "utf-8";
#header {
width: 100%;
}
#home {
width: 100%;
}
#features {
width: 100%;
}
#colors {
width: 100%;
}
#contact {
width: 100%;
}
#footer {
width: 100%;
}
#nav li a {
margin-left: 30px;
}
@media only screen and (max-width: 720px){
#nav li a:hover {
color: #a2a2a2;
}
#footer a:hover {
color: #a2a2a2;
}
#logo {
display: none;
}
* {
font-size: 12pt;
}
#header {
height: auto;
text-align: center;
}
#nav {
padding: 10px 5px;
}
#nav li a {
margin-left: 5px;
}
#footer {
padding: 13px 0;
}
#footer a {
font-size: 1em;
}
#colors img {
width: 100%;
}
}
这似乎是可行的,但无论出于何种原因,当您单击可以测试的菜单链接时,它开始缩进:
这种缩进实际上并不发生在手机上,但在通过触摸的手机上,相关事件在javascript中从未发生过,因此这显然仍然是一个问题
有人知道我该如何解决这个问题吗?这有点奇怪,但使用开发人员工具,我在第50行的main.css中发现了这一点:
#nav li a, #nav li a:active, #nav li a:visited {
color: #a2a2a2;
text-transform: uppercase;
font-weight: 700;
text-decoration: none;
margin-left: 50px;
transition: color .5s ease;
-moz-transition: color .5s ease;
-webkit-transition: color .5s ease;
-o-transition: color .5s ease;
}
删除#nav li a:active,它应该可以正常工作。您需要
#nav li a
和#nav li a:hover
以获得相同的css指令。尝试在#nav li a
和#nav li a:hover
选择器中添加相同的css指令,以防万一。非常感谢。这让我觉得自己像个白痴。我想我所需要的只是一双额外的眼睛。我很高兴这对我有帮助,这是我的一个错误。这两种方法都有效,但弗雷德里克的评论并不是问题所在。谢谢。另一个答案确实是问题的根源,所以我接受了它,尽管如果我在main.css文件(首先提供的文件)中保持a:活动,这同样有效。