gpt4 book ai didi

html - 移动设备的水平下拉菜单到垂直堆栈菜单

转载 作者:行者123 更新时间:2023-11-28 10:42:05 27 4
gpt4 key购买 nike

我无法让我的下拉菜单响应,所以它从桌面/平板电脑上的水平菜单变成了 iphone/android 的堆叠垂直下拉菜单。

菜单位于bankruptcycanada.com/menu4.html,标记为

<div id='cssmenu'>
<ul>
<li><a href='/'>Home</a></li>
<li><a href='#'>Contact a Trustee</a>
</li>
<li class='has-sub'><a href='#'>FAQ</a>
<ul>
<li><a href='/question1.htm'>Frequently Asked Questions</a></li>
<li><a href='/Credit-Counsellors.htm'>Credit Counsellors</a></li>
<li><a href='/how-bankruptcy-works.htm'>How Bankruptcy Works</a></li>
<li><a href='/BankruptcySteps.ppt.mht.html'>Steps in a Bankruptcy</a></li>
<li><a href='/personal1.htm'>Personal Bankruptcy</a></li>
<li><a href='/business1.htm'>Business Bankruptcy</a></li>
<li><a href='/conduct-before-filing-bankruptcy.htm'>Conduct Before Going Bankrupt</a></li>
<li><a href='/meeting-the-trustee.htm'>Meeting the Trustee</a></li>
<li><a href='/Bankruptcy-Myths.htm'>Bankruptcy Myths</a></li>
<li class='last'><a href='/blog.htm'>Blog</a></li>
</ul>
</li>
<li><a href='/BankruptcyTermPredictor.php'>Bankruptcy Cost</a></li>
<li><a href='/ask-a-trustee/'>Ask a Trustee</a></li>
<li class='has-sub'><a href='#'>Proposals</a>
<ul>
<li><a href='/consumer-proposals.htm'>Consumer Proposals - Avoid Bankruptcy</a></li>
<li><a href='/Bankruptcy-vs-Consumer-Proposals.htm'>Bankruptcy vs. Consumer Proposal</a></li>
<li class='last'><a href='/ConsumerProposalSteps.html'>Steps in a Consumer Proposal</a></li>
</ul>
</li>
<li class='has-sub'><a href='#'>Exemptions</a>
<ul>
<li class='last'><a href='/bankruptcyexemptions.htm'>Find Out What You KEEP</a></li>
</ul>
<li class='has-sub'><a href='#'>After Bankruptcy</a>
<ul>
<li class='last'><a href='/rebuildcredit1.htm'>Credit After Bankruptcy</a></li>
<li class='last'><a href='/After-Bankruptcy-Lenders.htm'>After Bankruptcy Lenders</a></li>
</ul>
</li>
<li><a href='/francais.htm'>Francais</a></li>
</ul>
</div>

我有单独的样式表 desktop.css/tablet.css/iphone.css/phone.css。

我为桌面写的样式是:

#cssmenu
#cssmenu,
#cssmenu ul,
#cssmenu li,
#cssmenu a {
border: none;
margin: 0;
padding: 0;

}
#cssmenu {
height: 37px;
display: block;
padding: 0;
margin: 2px 0;
border: 1px solid;
border-radius: 5px;
width: auto;
}
#cssmenu > ul {
list-style: inside none;
padding: 0;
margin: 0;
}
#cssmenu > ul > li {
list-style: inside none;
padding: 0;
margin: 0;
float: left;
display: block;
position: relative;
}
#cssmenu > ul > li > a {
outline: none;
display: block;
position: relative;
padding: 8px 16px;
text-align: center;
text-decoration: none;
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.4);
font-weight: bold;
font-size: 13px;
font-family: Arial, Helvetica, sans-serif;
}
#cssmenu > ul > li:first-child > a {
border-radius: 5px 0 0 5px;
}
#cssmenu > ul > li > a:after {
content: '';
position: absolute;
border-right: 1px solid;
top: -1px;
bottom: -1px;
right: -2px;
z-index: 99;
}
#cssmenu ul li.has-sub:hover > a:after {
top: 0;
bottom: 0;
}
#cssmenu > ul > li.has-sub > a:before {
content: '';
position: absolute;
top: 18px;
right: 4px;
border: 5px solid transparent;
border-top: 5px solid #FFF;
}
#cssmenu > ul > li.has-sub:hover > a:before {
top: 19px;
}
#cssmenu ul li.has-sub:hover > a {
background: #c00404;
border-color: #c00404;
padding-bottom: 13px;
z-index: 999;
}
#cssmenu ul li.has-sub:hover > ul,
#cssmenu ul li.has-sub:hover > div {
display: block;
}
#cssmenu ul li.has-sub > a:hover {
background: #c00404;
border-color: #c00404;
}
#cssmenu ul li > ul,
#cssmenu ul li > div {
display: none;
width: auto;
position: absolute;
top: 38px;
padding: 10px 0;
background: #9C2125;
border-radius: 0 0 5px 5px;
z-index: 999;
}
#cssmenu ul li > ul {
width: 160px;
}
#cssmenu ul li > ul li {
display: block;
list-style: inside none;
padding: 0;
margin: 0;
position: relative;
}
#cssmenu ul li > ul li a {
outline: none;
display: block;
position: relative;
margin: 0;
padding: 8px 20px;
font: 10pt Arial, Helvetica, sans-serif;
color: #ffffff;
text-decoration: none;
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
}
#cssmenu,
#cssmenu > ul > li > ul > li a:hover {
background: #003d4a;
background: -moz-linear-gradient(top, #003d4a 0%, #013273 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #003d4a), color-stop(100%, #013273));
background: -webkit-linear-gradient(top, #003d4a 0%, #013273 100%);
background: -o-linear-gradient(top, #003d4a 0%, #013273 100%);
background: -ms-linear-gradient(top, #003d4a 0%, #013273 100%);
background: linear-gradient(top, #003d4a 0%, #013273 100%);
}
#cssmenu {
border-color: #c00404;
}
#cssmenu > ul > li > a {
border-right: 1px solid #c00404;
color: #FFF;
}
#cssmenu > ul > li > a:after {
border-color: #fb2f2f;
}
#cssmenu > ul > li > a:hover {
background: #c00404;
color: #ffffff;
}
#cssmenu ul ul a:hover {
color: #deb40d;
font-weight:bold;
}
#cssmenu > ul > li.has-sub > a:hover:before {
border-top: 5px solid #ffffff;
}

我有两个问题:

1) 桌面上的菜单不会拉伸(stretch)以适应屏幕的整个宽度;当仍有空间适合它们时,最后两个元素会下降一行。我该如何解决这个问题?

2) 我需要对 css 进行哪些更改才能使其响应 iphone.css 和 phone.css 的移动设备?我是否需要添加 jquery,如果需要,添加什么脚本和在哪里?

请帮忙!!我真的很感激这方面的帮助。非常感谢。

最佳答案

1) 看:div#content 的宽度为 798pxdiv#cssmenu 的宽度为 autodiv#cssmenudiv#content 的子元素,因此它的宽度与父元素相同 (798px)。它是相同的,宽度为 798px

您可以稍微重组您的代码。您可以再创建 1 个具有宽度的包装器(内容外部),这对您的菜单来说没问题,并将 div#content 放入其中。

2)这个问题可能没有你想象的那么简单。有很多文章介绍了如何检测 iphone 等。使用 google 或在 so.com 上找到一些。

例如: http://davidwalsh.name/detect-iphone或这个 https://stackoverflow.com/a/11820473/2898694
等等,你可以自己找到很多例子。

但是这样的方法会带来一些问题。 js关了怎么办?为什么用户会使用不流行的浏览器?等等等等等等

我建议你使用媒体查询:

<link rel="stylesheet" media="screen and (min-device-width: 600px)" href="600.css" />

这将为设备宽度至少为 600px 的浏览器加载 css 文件 600.css。您可以添加 css 文件以获得更多屏幕宽度。

您可以在这里阅读更多相关信息:http://css-tricks.com/resolution-specific-stylesheets/ (另外,还有一个视频可用)

希望对您有所帮助。

P.S.:关于小工具。小工具上没有 hover 操作,因此您的下拉菜单将不起作用/无法正常工作。您必须考虑小工具用户并找到另一种方式来为他们显示菜单,否则他们将被堆叠在主页上。

关于html - 移动设备的水平下拉菜单到垂直堆栈菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23095252/

27 4 0